数据库设计实验报告银行储蓄系统Word下载.docx
《数据库设计实验报告银行储蓄系统Word下载.docx》由会员分享,可在线阅读,更多相关《数据库设计实验报告银行储蓄系统Word下载.docx(16页珍藏版)》请在冰豆网上搜索。
审核:
上级银行对所属银行的业务信息和账户清单进行审查、核准
计算:
主要是工作人员对总账出入和利息的合计
办理:
职员对储户信息和账户资料的登记和核准,实现储户开户登记,办理定期存款帐,办理定期取款手续,办理活期存款帐,办理活期取款手续
管理:
主指上级银行业务员对下级银行、人员的管控和调动
数据输入:
输入储户和账户的基本信息
3、系统性能
该系统的精度要求较高、时间比较快、应变能力快。
4、数据字典
(1)数据项
数据项
名称及属性
编码
数据类型
长度
储蓄所名称
savingsbank_name
VA20
20
储蓄所编号
savingsbank_number
N20
储蓄所长
manager
储蓄柜台号
counternumber
储蓄类别
type
A20
储蓄账号
account
储蓄账号编码
accountnumber
N8
8
储蓄金额
money
MN20
储蓄金额2
money2
分行编号
branchb_number
LVA20
分行长
branchb_chief
分行长编号
branchb_chiefnumber
取款额
money1
唯一
unique
<
UNDEF>
国家编号
no.
LVA
地址
address
VA30
30
姓名
name1
name2
name
定期
dingqi
密码
secret
VA12
12
密码确认
assured
年龄
age
N3
3
并列
appose
VA10
10
开户时间
time
DT
开户金额
accountmoney
性别
sex
A2
2
总行长
cheif
总行长编号
chiefnumber
总金额
allmoney
方式
manner
核对
check
活期
huoqi
登记
register
编号
number3
A10
number2
N10
number1
职务
position
联系电话
telephone
N15
15
营业厅编号
number
营业窗口号
windownumber
身份证号
ID
A18
18
(2)数据结构
总行包括多个分行,各分行之间为并列关系,分行雇佣业务员,审核账目清单,每个分行有一个营业厅受理各项业务;
一个营业厅负责受理一个分行的业务,一个营业厅由多个储蓄所组成;
并有多个业务员受理各项业务,一个储蓄所有多个职员,每个职员在一个储蓄柜台工作;
每个业务员在一个营业窗口工作,储户可选择多个储蓄所存、取款,并可拥有多个储蓄账号
二、概念结构设计
ER图:
PowerDesigner的概念模型图
三、逻辑结构设计
根据规则转换成关系模式
总行(国家编号,总行长,总行长编号,地址,联系电话,分行)
分行(分行编号,分行长,分行长编号,地址,联系电话,营业厅,业务员)
营业厅(营业厅编号,地址,联系电话,营业窗口号,储蓄所,业务员)
储蓄所(储蓄所编号,储蓄所名称,储蓄所长,地址,联系电话,储蓄柜台号,储蓄金额,职员)
业务员(姓名,性别,编号,年龄,职务,营业窗口)
职员(姓名,性别,编号,年龄,职务,储蓄柜台)
储户(姓名,身份证号,性别,储蓄类别,年龄,开户金额,储蓄所,储蓄账号)
账户(储蓄账号编码,储蓄账号,储蓄类别,开户时间,开户金额,总金额,密码)
PowerDesigner的物理模型图
四、数据库物理实施
数据库定义SQL文本如下:
/*==============================================================*/
/*DBMSname:
ORACLEVersion10g*/
/*Createdon:
2010-11-2220:
41:
13*/
/*Table:
"
account"
*/
createtable"
(
type"
CHAR(20),
time"
DATE,
accountmoney"
NUMBER(20),
allmoney"
NUMBER(20)notnull,
secret"
VARCHAR2(12),
accountnumber"
NUMBER(8)notnull,
constraintPK_ACCOUNTprimarykey("
)
);
alternation"
bra_branchb_c2"
VARCHAR2(20)notnull,
bra_branchb_c3"
bra_branchb_n2"
CLOBnotnull,
branchb_chief"
branchb_number"
bra_branchb_ch"
bra_branchb_c4"
bra_branchb_nu"
bra_branchb_c5"
bra_branchb_c6"
bra_branchb_n3"
manner"
VARCHAR2(20),
constraintPK_ALTERNATIONprimarykey("
"
/*Index:
alternation_FK"
createindex"
on"
ASC,
ASC
bankclerk"
name2"
sex"
CHAR
(2),
number2"
NUMBER(10)notnull,
age"
NUMBER(3),
position"
VARCHAR2(10),
windownumber"
NUMBER(10),
constraint"
PK_BANKCLERK"
primarykey("
bankdepartment"
number"
savingsbank_nu"
ban_name2"
ban_number2"
ban_name3"
ban_number3"
name"
number1"
sav_savingsban"
ban_name4"
ban_number4"
sav_savingsba2"
cle_name"
cle_number1"
sav_savingsba3"
address"
VARCHAR2(30),
telephone"
NUMBER(15),
appose"
appose2"
PK_BANKDEPARTM"
branchbank"
PK_BRANCHBANK"
engage_FK"
makeup_FK"
makeup4_FK"
engage2_FK"
chiefbank"
no."
cheif"
chiefnumber"
VARCHAR2(10)notnull,
PK_CHIEFBANK"
clerk"
counternumber"
constraintPK_CLERKprimarykey("
depositor"
name1"
IDCHAR(18)notnull,
acc_accountnum"
savingsbank_na"
money"
assured"
money2"
money1"
secret2"
assured2"
money3"
money4"
constraintPK_DEPOSITORprimarykey("
ID)
savingsbank"
manager"
N