银行系统的数据库课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
一、目的与意义 0
二、设计内容与要求 0
三、设计原理 (1)
1、数据库基本操作: (1)
Ⅰ、定义基本表 (1)
Ⅱ、修改基本表 (1)
III、删除基本表 (1)
IV、数据查询 (1)
V、插入元组 (2)
VI、修改数据 (2)
VII、删除数据 (2)
2、数据库完整性 (2)
I、实体完整性定义 (2)
II、参照完整性定义 (2)
3、触发器 (3)
I、定义触发器 (3)
II、激活触发器 (3)
III、删除触发器 (3)
4、存储过程 (3)
I、PL/SQL的块结构 (3)
II、变量常量的定义 (4)
III、控制结构 (4)
IV、存储过程的用户接口 (5)
四、总体设计方案 (5)
五、详细设计 (5)
1、需求分析 (5)
2、流程图 (6)
3、E-R图 (6)
4、设计表 (6)
5、关系图 (7)
6、编码 (8)
六、测试与调试 (11)
七、收获与体会 (15)
八、主要参考资料 (15)
一、目的与意义
本课程设计是在学完《数据库系统与应用》课程之后,让学生综合应用数据库知识,设计数据库,进行调试与测试,以加深对数据库基本知识及SQL语言的理解,提高综合应用知识的能力、分析解决问题的能力,加强数据库知识的实践技能,初步培养开发实用数据库系统的能力。
二、设计内容与要求
设计一个银行账户管理系统,至少能够实现存款、取款、查询、转账等基本功能,要求在在数据库实现过程中至少建立三张表、不得少于四个查询、三个触发器、使用至少一个存
储过程。
三、设计原理
SQL是一种介于关系代数与关系演算之间的结构化查询语言,其功能并不仅仅是查询。SQL是一个通用的、功能极强的关系数据库语言。它之所以能够为用户和业界所接受,并成为国际标准,是因为它是一个综合的、功能极强同时又简捷易学的语言。SQL语言集数据查询(Data Query)、数据操纵(Data Manipulation)、数据定义(Data Definition)和数据控制(Data Control)功能于一体。
1、数据库基本操作:
Ⅰ、定义基本表
语句格式:
CREATE TABLE <表名>
(<列名> <数据类型>[ <列级完整性约束条件> ]
[,<列名> <数据类型>[ <列级完整性约束条件>] ] …
[,<表级完整性约束条件> ] );
如果完整性约束条件涉及到该表的多个属性列,则必须定义在表级上,否则既可以定义在列级也可以定义在表级。
Ⅱ、修改基本表
语句格式:
[ ADD <新列名> <数据类型> [ 完整性约束 ] ]
[ DROP <完整性约束名> ]
[ ALTER COLUMN<列名> <数据类型> ];
III、删除基本表
语句格式:
DROP TABLE <表名>[RESTRICT| CASCADE];
RESTRICT:删除表是有限制的。欲删除的基本表不能被其他表的约束所引用,如果存在依赖该表的对象,则此表不能被删除。
CASCADE:删除该表没有限制。在删除基本表的同时,相关的依赖对象一起删除。
IV、数据查询
语句格式:
SELECT [ALL|DISTINCT] <目标列表达式>
[,<目标列表达式>] …
FROM <表名或视图名>[, <表名或视图名> ] …
[ WHERE <条件表达式> ]
[ GROUP BY <列名1> [ HAVING <条件表达式> ] ]
[ ORDER BY <列名2> [ ASC|DESC ] ];
V、插入元组
语句格式:
INSERT
INTO <表名> [(<属性列1>[,<属性列2 >…)]
VALUES (<常量1> [,<常量2>] … )
功能:将新元组插入指定表中。
VI、修改数据
语句格式:
UPDATE <表名>
SET <列名>=<表达式>[,<列名>=<表达式>]…
[WHERE <条件>];
功能:修改指定表中满足WHERE子句条件的元组。
VII、删除数据
语句格式:
DELETE
FROM <表名>
[WHERE <条件>];
功能:删除指定表中满足WHERE子句条件的元组。
WHERE子句:指定要删除的元组。
缺省表示要删除表中的全部元组,表的定义仍在字典中。
2、数据库完整性
I、实体完整性定义
单属性构成的码有两种说明方法:定义为列级约束条件;定义为表级约束条件。
对多个属性构成的码只有一种说明方法:定义为表级约束条件。
插入或对主码列进行更新操作时,RDBMS按照实体完整性规则自动进行检查。包括:
①. 检查主码值是否唯一,如果不唯一则拒绝插入或修改。
②. 检查主码的各个属性是否为空,只要有一个为空就拒绝插入或修改。
II、参照完整性定义
在CREATE TABLE中用FOREIGN KEY短语定义哪些列为外码,用REFERENCES短语指明这些外码参照哪些表的主码。
参照完整性违约处理:
①.拒绝(NO ACTION)执行----默认策略
②.级联(CASCADE)操作
③.设置为空值(SET-NULL)
对于参照完整性,除了应该定义外码,还应定义外码列是否允许空值。