版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 数据库课程设计银行储蓄管理系统 第 PAGE 21页共 NUMPAGES 21页数据库原理及应用课程设计报告专业:信信息管理理与信息息系统班级:信信息08801学号:008122041112姓名:黄黄露题目名称称:银行行储蓄业业务管理理系统完成日期期:20111.33.111 目录一、系统统定义.33二、需求求分析.33(一)系系统综合合需求(二)系系统逻辑辑模型1数据据流图:2数据据字典三、系统统设计5(一)概概念结构构设计E-R图图:(二)逻逻辑结构构设计四、详细细设计6(一)开发平平台及工工具(二)数数据库分分析五、源程程序清单单113六、设计计心得18一、系统统定义:银行是一一个国家
2、家正常运运转必不不可缺的的机构,当今社社会,几几乎是每每个人都都会涉及及到储蓄蓄业务,为此,为方便便用户查查询和使使用各种种业务,可用计计算机为为工具对对查询管管理为一一体的各各种服务务。当然然,这样样的一个个银行储储蓄业务务系统就就应运而而生了。本系统统是一个个简单的的储蓄系系统,可可以对储储户的信信息进行行查询修修改以及及删除。二、需求求分析:(一)系系统综合合需求本系统是是银行用用户的存存取款系系统。主主要功能能是管理理各个用用户存取取款的相相关数据据。储户填写写的存款款单或取取款单输输入系统统,如果果是存款款,则系统统记录存存款人姓姓名,住住址(或或电话号号码),身份证证号码,存款类类
3、型,存存款金额额,存款款日期等等信息,并打印印存单给给储户;如果是是取款,则需要要输入帐帐号、取取款金额额等信息息,核对对正确后后系统打打印出清清单给储储户。(二)系系统逻辑辑模型1数据据流图:图1-11 系统统数据流流图2数据据字典数据名字字:注册册申请表表数据来源源:储户户数据目的的:储户户信息数据组成成:姓名名+密码码+住址址+身份份证号码码数据名字字:储户户信息表表数据来源源:储户户数据目的的:身份份验证数据组成成:姓名名+密码码+住址址+身份份证号码码+现有有金额数据名字字:利息息清单数据来源源:系统统数据目的的:储户户数据组成成:利息息+姓名名+取款款时间数据名字字:存单单数据来源
4、源:存款款信息表表数据目的的:储户户数据组成成:姓名名+到期期时间+存入类类型+存存入时间间+利率率+存入入金额 数据名字字:取款款单数据来源源:储户户 数据目的的:储户户信息表表数据组成成:姓名名+到期期时间+存入类类型+存存入时间间+利率率+取款款金额+身份证证号数据名字字:存款款单数据来源源:储户户数据目的的: 存存款信息息表数据组成成:姓名名+到期期时间+存入类类型+存存入时间间+利率率+存入入金额+身份证证号表1.11 系统统数据字字典三、系统统设计:(一)概概念结构构设计E-R图图:(二)逻逻辑结构构设计四、详细细设计(一)开开发平台台及工具具开发工具具Miccrossoftt V
5、iisuaal CC+ 6.00DBMSS:Miccrossoftt SQQL SServver 20000建模工具具:Miccrossoftt Viisioo,woord编编辑器说明:为为了方便便的实现现系统以及及个人熟熟悉程度度的因素素,选择择了VCC+ 66.0的的开发平平台。在Winndowws平台台上我们们所学过过的就只只有MSS SQQL SServver了了,所以以采用SSQL Serrverr20000来进进行开发发。(二)银银行储蓄蓄业务数数据库分分析1)本系系统由三三张表组组成,具具体如下下:表名属性(字字段)名名储户表账号、身身份证号号、姓名名、性别别、身高高、地址址、存
6、款款余额存款单表表存款单号号、金额额、存款款方式、账号、存款日日期取款单表表取款单号号、金额额、取款款方式、账号、取款日日期系统表基基本信息息2)表间间关系如如下:一个存款款单或取取款单属属于一个个用户,一个用用户可以以拥有多多次存款款单或取取款单。用户通通过存款款操作与与存款单单建立联联系,通通过取款款操作与取款款单建立立联系。3)数据据准备前期准备备工作:以sysstemm账户登登录,创创建新账账户creaate useerdy iidenntiffiedd byy lyyjn;grannt ddba to dy;connnectt dyy/dyoorcll;各个表的的具体信信息和创创建表
7、的的代码如如下:储户表(lusser)字段(属属性)含含义字段(属属性)名名字段(属属性)类类型账号acnuumVARCCHARR(5)身份证号号idNUMBBER姓名nameeVARCCHARR2(220)性别sexVARCCHARR2(22)身高heigghtNUMBBER(3,22)地址addrresssVARCCHARR2(220)存款余额额(亿)Balaancee(biilliion)INT创建储户户表的代代码如下下:CREAATE TABBLE lusser(acnnum VVARCCHARR2(55) NOTT NUULL ,id NUUMBEER NOTT NUULL ,nam
8、me VAARCHHAR22(200) NOTT NUULL ,sexx VAARCHHAR22(2) CHHECKK(seex IN (男,女) ) , heiightt NUUMBEER(33,2) NOOT NNULLL,adddresss VAARCHHAR22(200) NOTT NUULL ,ballancce INNT NOTT NUULL );ALTEER TTABLLE lluseer添加主键键约束ADDD COONSTTRAIINT XPPKluuserr PRRIMAARY KEYY (aacnuum);存款单表表(deepossitsslipp)字段(属属性)含含义字段
9、(属属性)名名字段(属属性)类类型存款单号号dps_nummNUMBBER账号acnuumVARCCHARR2(55)存款时间间dps_timmeTIMEESTAAMP金额(亿亿)moneeyINT存款方式式dps_wayyVARCCHARR2(110)创建存款款单表的的代码如如下:CREAATE TABBLE depposiitsllip(dps_numm NUMMBERR NNOT NULLL ,monney INNT CCHECCK(mmoneey=0) ,dpss_waay VAARCHHAR22(100) NOTT NUULL ,acnnum VAARCHHAR22(5) NNOT
10、NULLL ,dpss_tiime TIIMESSTAMMP NULLL );ALTEER TTABLLE ddepoosittsliip添加主键键约束ADDD COONSTTRAIINT XPPKdeepossitsslipp PRRIMAARY KEYY (ddps_numm,accnumm);ALTEER TTABLLE ddepoosittsliip在depposiitsllip表表中的aacnuum字段段中添加加外键约约束ADDD (CCONSSTRAAINTT RR_5 FORREIGGN KKEY (accnumm) RREFEERENNCESS luuserr(accnumm)
11、;取款单表表(drrawsslipp)字段(属属性)含含义字段(属属性)名名字段(属属性)类类型取款单号号dw_nnumNUMBBER账号acnuumVARCCHARR2(55)取款时间间dw_ttimeeTIMEESTAAMP金额(亿亿)MoneeyINT取款方式式dw_wwayVARCCHARR2(110)创建取款款单表的的代码如如下:CREAATE TABBLE draawsllip(dw_numm NUUMBEER NOTT NUULL ,monney INNT CCHECCK(mmoneey=0),dw_wayy VAARCHHAR22(100) NOTT NUULL ,acnnum
12、 VAARCHHAR22(5) NNOT NULLL ,dw_timme TIIMESSTAMMP NULLL );ALTEER TTABLLE ddrawwsliip 添加主主键约束束ADDD COONSTTRAIINT XPPKdrrawsslipp PRRIMAARY KEYY (ddw_nnum,acnnum);ALTEER TTABLLE ddrawwsliip 在在draawsllip表表中的aacnuum字段段中添加加外键约约束ADDD (CCONSSTRAAINTT RR_6 FORREIGGN KKEY (accnumm) RREFEERENNCESS luuserr(acc
13、numm);4)插入入(innserrt)数数据1、插入入储户表表(luuserr)数据据inseert intto lluseer (ACNNUM, IDD, NNAMEE, SSEX,HEIIGHTT, AADDRRESSS, BBALAANCEE)valuues (0000001, 344221101, 刘刘忠田, 男,1.772,北京京市朝阳阳区, 3445);inseert intto lluseer (ACNNUM, IDD, NNAMEE, SSEX,HEIIGHTT, AADDRRESSS, BBALAANCEE)valuues (0000002, 344221102, 周周正
14、义, 男,1.778, 天津津市宝坻坻区, 1223);inseert intto lluseer (ACNNUM, IDD, NNAMEE, SSEX,HEIIGHTT, AADDRRESSS, BBALAANCEE)valuues (0000003, 344221103, 陈陈光标, 男,1.880, 南京京市新街街口, 3333);inseert intto lluseer (ACNNUM, IDD, NNAMEE, SSEX,HEIIGHTT, AADDRRESSS, BBALAANCEE)valuues (0000004, 344221104, 张张茵, 女女,11.655, 上海市
15、市黄浦区区, 2344);inseert intto lluseer (ACNNUM, IDD, NNAMEE, SSEX,HEIIGHTT, AADDRRESSS, BBALAANCEE)valuues (0000005, 344221105, 陈陈丽华, 女,1.770, 香港港市旺角角区, 1111);2、插入入存款单单表(ddepoosittsliip)数数据inseert intto ddepoosittsliip (DPSS_NUUM, ACNNUM, MOONEYY, DDPS_TIMME, DPSS_WAAY)valuues (9880011,0000001, 1220,tto
16、_ddatee(008-008-220099,dd-mm-yyyyy), 整存整整取);inseert intto ddepoosittsliip (DPSS_NUUM, ACNNUM, MOONEYY, DDPS_TIMME, DPSS_WAAY)valuues (9880022,0000001, 3000,tto_ddatee(110-008-220099,dd-mm-yyyyy), 整存整整取);inseert intto ddepoosittsliip (DPSS_NUUM, ACNNUM, MOONEYY, DDPS_TIMME, DPSS_WAAY)valuues (9880033
17、,0000002, 1000,tto_ddatee(112-008-220099,dd-mm-yyyyy), 整存零零取);inseert intto ddepoosittsliip (DPSS_NUUM, ACNNUM, MOONEYY, DDPS_TIMME, DPSS_WAAY)valuues (9880044,0000002, 1550,tto_ddatee(112-009-220099,dd-mm-yyyyy), 整存零零取);inseert intto ddepoosittsliip (DPSS_NUUM, ACNNUM, MOONEYY, DDPS_TIMME, DPSS_WAA
18、Y)valuues (9880055,0000003, 2000,tto_ddatee(115-008-220099,dd-mm-yyyyy), 零存整整取);inseert intto ddepoosittsliip (DPSS_NUUM, ACNNUM, MOONEYY, DDPS_TIMME, DPSS_WAAY)valuues (9880066,0000003, 1000,tto_ddatee(114-009-220099,dd-mm-yyyyy), 零存整整取);inseert intto ddepoosittsliip (DPSS_NUUM, ACNNUM, MOONEYY, DD
19、PS_TIMME, DPSS_WAAY)valuues (9880077,0000003, 800,too_daate(233-099-20009,ddd-mmm-yyyyyy), 零零存整取取);inseert intto ddepoosittsliip (DPSS_NUUM, ACNNUM, MOONEYY, DDPS_TIMME, DPSS_WAAY)valuues (9880088,0000004, 800,too_daate(233-088-20009,ddd-mmm-yyyyyy), 零零存零取取);inseert intto ddepoosittsliip (DPSS_NUUM,
20、 ACNNUM, MOONEYY, DDPS_TIMME, DPSS_WAAY)valuues (9880099,0000004, 1880,tto_ddatee(224-009-220099,dd-mm-yyyyy), 零存零零取);inseert intto ddepoosittsliip (DPSS_NUUM, ACNNUM, MOONEYY, DDPS_TIMME, DPSS_WAAY)valuues (9880100,0000005, 1990,tto_ddatee(224-008-220099,dd-mm-yyyyy), 通知存存款);inseert intto ddepoosit
21、tsliip (DPSS_NUUM, ACNNUM, MOONEYY, DDPS_TIMME, DPSS_WAAY)valuues (9880111,0000005, 2110,tto_ddatee(330-009-220099,dd-mm-yyyyy), 通知存存款);3、插入入取款单单表(ddrawwsliip)数数据inseert intto ddrawwsliip (DW_NUMM, AACNUUM, MONNEY, DWW_TIIME, DWW_WAAY)valuues (5220011,0000001, 755,too_daate(088-088-20010,ddd-mmm-yyy
22、yyy), 柜柜台);inseert intto ddrawwsliip (DW_NUMM, AACNUUM, MONNEY, DWW_TIIME, DWW_WAAY)valuues (5220022,0000002, 277,too_daate(088-099-20010,ddd-mmm-yyyyyy), 取取款机);inseert intto ddrawwsliip (DW_NUMM, AACNUUM, MONNEY, DWW_TIIME, DWW_WAAY)valuues (5220033,0000002,1000,too_daate(122-100-20010,ddd-mmm-yyyy
23、yy), 柜柜台);inseert intto ddrawwsliip (DW_NUMM, AACNUUM, MONNEY, DWW_TIIME, DWW_WAAY)valuues (5220044,0000003,47,to_datte(15-08-20110,ddd-mmm-yyyyy), 取款款机);inseert intto ddrawwsliip (DW_NUMM, AACNUUM, MONNEY, DWW_TIIME, DWW_WAAY)valuues (5220055,0000004,26,to_datte(12-09-20110,ddd-mmm-yyyyy), 取款款机);in
24、seert intto ddrawwsliip (DW_NUMM, AACNUUM, MONNEY, DWW_TIIME, DWW_WAAY)valuues (5220066,0000005,1000,too_daate(233-099-20010,ddd-mmm-yyyyyy), 柜柜台);inseert intto ddrawwsliip (DW_NUMM, AACNUUM, MONNEY, DWW_TIIME, DWW_WAAY)valuues (5220077,0000005,1500,too_daate(100-100-20010,ddd-mmm-yyyyyy), 柜柜台);inse
25、ert intto ddrawwsliip (DW_NUMM, AACNUUM, MONNEY, DWW_TIIME, DWW_WAAY)valuues (5220088,0000005,39,to_datte(31-10-20110,ddd-mmm-yyyyy), 取款款机);5)索引引建立索引引遵循的的规律:1.建立立在whheree子句经经常引用用的列上上,2.经常常需要排排序的列列上,3.连接接属性列列上等在存款单单表的存款单单号字段段和账号号字段建建立组合合索引CREAATE UNIIQUEE INNDEXX XPPKdeepossitsslipp ONN deepossitssli
26、pp(dpss_nuum ASCC,accnumm AASC);在存款单单表的账号字段段建立索索引CREAATE INDDEX XIFF1deepossitsslipp ONN deepossitsslipp(acnnum ASSC);在取款单单表的取款单号号字段和和账号字段段建立组组合索引引CREAATE UNIIQUEE INNDEXX XPPKdrrawsslipp ONN drrawsslipp(dw_numm AASC,acnnum ASSC);在取款单单表的账号字段段建立索索引CREAATE INDDEX XIFF1drrawsslipp ONN drrawsslipp(acnnu
27、m ASSC);在储户表表的账户字段段上建立立索引,方便查查询CREAATE UNIIQUEE INNDEXX XPPKluuserr ONN luuserr(acnnum ASSC);6)触发发器1、插入入存款,对应储储户表的的相应储储户的余余额(bbalaancee)增加加插入记记录包含含的金额额数(mmoneey)CREAATE OR REPPLACCE TTRIGGGERR OpperaatinngDpps AFFTERR INNSERRT OON ddepoosittsliip FOOR EEACHH ROOWDECLLAREEn_acc VAARCHHAR22(5);n_moo I
28、NNT;BEGIINn_acc:=:neww.accnumm;n_moo:=:neww.mooneyy;updaate lusser sett baalannce=ballancce+nn_moo whheree luuserr.accnumm=n_ac;END OpeerattinggDpss;2、删除除存款,对应储储户表的的相应储储户的余余额(bbalaancee)减去去所删除记记录的金金额数(monney)CREAATE OR REPPLACCE TTRIGGGERR OpperaatinngDpps2 AFFTERR DEELETTE OON ddepoosittsliip FOOR
29、EEACHH ROOWDECLLAREEo_acc VAARCHHAR22(5);o_moo INNT;BEGIINo_acc:=:oldd.accnumm;o_moo:=:oldd.mooneyy;updaate lusser sett baalannce=ballancce-oo_moo whheree luuserr.accnumm=o_ac;END OpeerattinggDpss2;3、插入入取款,对应储储户表的的相应储储户的余余额(bbalaancee)减少少插入记记录包含含的金额额数(mmoneey)CREAATE OR REPPLACCE TTRIGGGERR Opperaat
30、inngDww AFFTERR INNSERRT OON ddrawwsliip FOOR EEACHH ROOWDECLLAREEn_acc VAARCHHAR22(5);n_moo INNT;BEGIINn_acc:=:neww.accnumm;n_moo:=:neww.mooneyy;updaate lusser sett baalannce=ballancce-nn_moo whheree luuserr.accnumm=n_ac;END OpeerattinggDw;4、删除除取款,对应储储户表的的相应储储户的余余额(bbalaancee)加上上所删除记记录的金金额数(monney)
31、CREAATE OR REPPLACCE TTRIGGGERR OpperaatinngDww2 AFFTERR DEELETTE OON ddrawwsliip FOOR EEACHH ROOWDECLLAREEo_acc VAARCHHAR22(5);o_moo INNT;BEGIINo_acc:=:oldd.accnumm;o_moo:=:oldd.mooneyy;updaate lusser sett baalannce=ballancce+oo_moo whheree luuserr.accnumm=o_ac;END OpeerattinggDw22;5、插入入的取款款金额(monn
32、ey)大于对对应用户户的余额额(baalannce)时,系系统报错错CREAATE OR REPPLACCE TTRIGGGERR OpperaatinngDww3 AFFTERR innserrt OON ddrawwsliip FOOR EEACHH ROOWDECLLAREEn_acc VAARCHHAR22(5);n_moo INNT;n_baa INNT;BEGIINn_acc:=:neww.accnumm;n_moo:=:neww.mooneyy;seleect ballancce iintoo n_ba froom lluseer wwherre aacnuum=nn_acc;i
33、f nn_moon_ba theenRAISSE_AAPPLLICAATIOON_EERROOR(-200000, 存存款余额额不足!请重新新插入存存款!);end if;END OpeerattinggDw33;五、源程程序清单单#inccludde#inccludde#inccluddeusinng nnameespaace stdd;consst iint Maxx=1000;voidd Waait();classs UUserr /用用户类的的声明publlic: Useer() CuurreentAAcouunt=0; /初初始化当当前的账账户 voiid RReseert11(Us
34、ser *u,douublee A) u-CuurreentAAcouunt=u-CurrrenntAccounnt+AA; voiid RReseert22(Usser *u,douublee A) u-CuurreentAAcouunt=u-CurrrenntAccounnt-AA; chaar *gettnamme() /取取得用户户名 reeturrn nnamee; lonng ggetNNum() /取得得帐户号号 reeturrn NNum; douublee geetCuurreentAAcouunt() reeturrn CCurrrenttAcoountt; voiid o
35、outpput() /输出出相关信信息 coout用用户名:nammeenddl; coout账账 号号:Nuumenddl; coout余余 额额:CuurreentAAcouuntnnamee,naame); thhis-Nuum=NNum; voiid DDepoositt(Usser *u,douublee Accounnt) /存款 u-Reeserrt1(u,AAcouunt); voiid oout(Useer *u,ddoubble acoountt) /取款 iff(accounntuu-ggetCCurrrenttAcoountt() ccoutt余额不不足.n; ells
36、e ccouttRReseert22(u,acoountt); voidd Loocatte(UUserr *uu) /查查询余额额 u-ouutpuut(); privvatee: chaar nnamee200; lonng NNum; douublee CuurreentAAcouunt; ;classs DDoBaank /银行管管理类的的声明publlic: DoBBankk() Usser a; toop=-1; fsstreeam fille(f:Usser.txtt,iios:inn); /以读的的方式打打开文件件 whhilee(1) ffilee.reead(chhar*)
37、&aa,siizeoof(aa); iif(!fille) breeak; ttop+; bbtoop=a; fiile.cloose(); /关闭闭文件 voiid WWorkk(); voiid aaddUUserr(chhar *naame,intt Nuum) Usser *p=equual(Numm); iff(p=NUULL) ttop+; bbtoop.adddUseer(nnamee,Nuum); ccoutt成功载载入nnnn; ellse couut该用用户已存存在.n; Useer *equual(lonng NNum) innt ii; foor(ii=0;ittop;
38、i+) iif(bbi.geetNuum()=NNum) retturnn &bbi; rretuurn NULLL; DooBannk() /析构构函数 fsstreeam fille(f:Usser.txtt,iios:ouut); /以以写的方方式打开开文件 forr (iint i=00;i=toop;ii+) ffilee.wrritee(ccharr *)&bi,sizzeoff(bi); fiile.cloose(); /关闭文文件 privvatee: Useer bbMaax; intt toop;voidd Waait() intt i=0; whiile(i9999999
39、99999) i+; voidd Meenu() /显示示功能菜菜单 couutnnnnnn; couut 1、用用户维护护n; couut 2、存存款nn; couut 3、取取款nn;coutt 4、查查询nn; couutnnumbber; whiile(nummberr!=0) iff(iint)nummberr553) ccoutt对不起起,你的的输入有有误。n; ellse swwitcch(nnumbber) /输入功功能代号号 caase 1: cooutnamme; cooutNumm; adddUsser(namme,NNum); brreakk; caase 2: cco
40、uttNuum; uus=eequaal(NNum); iif(uus=NULLL) couut不存存在该用用户.n; eelsee couutTTAcoountt; us-Deepossit(us,TAccounnt); ccoutt成功存存入.nnnn; brreakk; caase 3: ccouttNuum; uus=eequaal(NNum); iif(uus=NULLL) couut不存存在该用用户.n; eelsee couutTTAcoountt; us-ouut(uus,TTAcoountt); ccouttnnnn; brreakk; casse 4: ccouttNuum;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 筑牢粮食安全防线:新时代粮食安全生产保障体系构建
- 2025 高中信息技术数据与计算之数据可视化的误差线图设计课件
- 2026年生猪标准化养殖全流程技术与管理规范
- 2026年深海钻探与原位监测机器人模块化多体节设计规范
- 2026年数据脱敏匿名化处理技术标准与操作规范
- 2026年差异化乡土账号打造避免同质化竞争
- 2026年专项债消化政府拖欠账款:额度分配与项目申报操作指南
- 2026年行业大模型私有化垂类应用场景开发指南
- 2026年政务数据“微循环”打通:智能体跨系统协同方案
- 2026年文旅产业游客行为与资源数据集融合应用
- 2023届二轮复习 第四单元 第9课 走向整体的世界 学案
- 医师注册健康体检表
- 高速公路工程安全监理大纲
- 2023版思想道德与法治专题1担当复兴大任 成就时代新人PPT
- 现代设计理论与方法(上)
- ISO2553-2019焊接符号-培训资料
- GB/T 33130-2016高标准农田建设评价规范
- T∕CMATB 7001-2020 冷冻肉冷藏规范
- 六年级比例教材分析课件
- 宠物店如何给宠物做SPA
- 国别与地区经济(第二版)全套课件
评论
0/150
提交评论