数据库课程设计报告银行管理系统.docx
《数据库课程设计报告银行管理系统.docx》由会员分享,可在线阅读,更多相关《数据库课程设计报告银行管理系统.docx(11页珍藏版)》请在咨信网上搜索。
摘 要 银行管理系统在无论在网络上,还是多种管理系统软件资料上均有讲解,并且均非常详细,其难度也可想而知。这次课程设计时间紧迫,此外作者自身能力也十分有限,只能完毕银行管理系统中少许功能,因此该系统尚有诸多有待扩充及完善地方,有不妥善地方还请老师指点。这次课程设计只是到达训练、牢固知识目,熟悉数据库前台和后台编程、VC++控件、怎样访问数据库等方面知识,因此实现功能也很有限,待后来伴随知识积累,慢慢地扩充完善该系统。 本系统采用了可视化集成开发环境Visual C++ 6.0编辑顾客操作界面、以SQL Sever为后台数据库并以CRecordSet类访问数据库信息管理系统,该系统可以完毕顾客帐号建立、顾客存取款、数据备份与恢复等基本功能。 关键字:SQL数据库、SQL语言、VC++、银行管理系统 目 录 1 绪论 1.1 选题目及意义……………………………………………1 1.2 设计内容……………………………………………………1 2 需求分析 2.1 功能需求……………………………………………………1 2.2 数据需求……………………………………………………1 2.3 其他需求……………………………………………………1 3数据库设计 3.1概念构造设计………………………………………………2 3.2逻辑构造设计………………………………………………2 3.3物理构造设计………………………………………………2 4 系统功能设计……………………………………………………4 5 系统实现 5.1 开发环境………………………………………………4 5.2 重要功能运行成果及代码…………………………4 6 总结…………………………………………………………18 参照文献 (页码再查对一下) 1 绪论 1.1选题目及意义 银行管理系统:该系统规定建立顾客表并不是诸多,完毕功能也相对有限,但其中各个表之间联络很紧密,该系统对数据库表设计规定会很高,因此完毕这个题目,能更好训练数据库设计和java编程能力,选择该题目就是充足训练数据库表设计能力和运用java能力。 1.2 设计内容 顾客管理模块:建立新顾客、删除老顾客、更改顾客操作; 账户操作模块:账户信息、活期存取款操作、查询活期操作记录、定期存款、定期取款、查询定期操作记录; 数据库模块:数据库备份、数据库恢复; 2 需求分析 2.1 功能需求 对于顾客部分,可以新建和删除顾客,在操作过程中可以更改顾客;对于商品部分,可以查询商品信息,包括多种商品信息、商品单价、商品名单等;对于顾客操作部分,有顾客登录,顾客注册操作,此外操作完毕之后存储对应操作记录并可以查询操作记录等功能。 2.2 数据需求 账户信息:帐号varchar(20),开户人姓名varchar(20),账户密码char(6),身分证号varchar(20),账户余额float,开户日期datetime,开户地址varchar(30); 活期操作:帐号varchar(20),金额float,类型(存入,支出),账户余额float,利息float,存入日期datetime; 定期存款:帐号varchar(20),存款人姓名varhcar(10),存款金额float,存款日期datetime,存储年份int,存储利率float; 定期取款:帐号varchar(20),取款人姓名varhcar(10),取款金额float,取款日期datetime; 定期历史操作记录:帐号varchar(20),存取款人姓名varhcar(10),类型(存入,支出),办理日期datetime,存储年份int,存储利率float; 2.3 其他需求 完毕数据库备份与恢复,系统登录对话框等功能。 3. 数据库设计 3.1概念构造设计 活期存取款 存储 帐号 银行 储户 开户地址 姓名 性别 帐户余额 开户日期 密码 身份证号 定期存取款 定期操作记录 活期操作记录 银行管理系统E-R图 3.2 逻辑构造设计 储户(帐号,姓名,密码,身份证号,性别,帐户余额,开户日期,开户地址); 活期存取款(nID,帐号,金额,类型,办理日期,利息,账户余额); 定期存款(nID,帐号,存款人姓名,金额,存储年份,年利率,存储日期); 定期取款(nID,帐号,取款人姓名,取款金额,取款日期); 定期记录(nID,帐号,存取款人姓名,类型,操作金额,年份,操作日期) 3.3 物理构造设计 储户表 序号 字段名称 字段描述 数据类型 长度 属性 1 CNo 帐号 Varchar 20 PK 2 CName 开户人姓名 Varhcar 20 非空 3 CPassword 登录密码 Char 6 非空 4 CID 身份证号 Varchar 20 非空 5 CSex 性别 Char 2 非空 6 CBalance 帐户余额 Float 8 非空 7 CDate 开户日期 Datetime 8 非空 8 CAddress 开户地址 Varchar 30 非空 主键:帐号; 约束条件:各属性均非空,密码长度为6位; 活期存取款表 序号 字段名称 字段描述 数据类型 长度 属性 1 nID 序号 Int 4 PK 2 CNo 帐号 Varchar 20 非空 3 CMoney 操作金额 Float 8 非空 4 CStyle 操作类型 Varchar 10 非空 5 CDate 操作日期 Datetime 8 非空 6 CInterest 利息 Float 8 非空 7 CBalance 帐户余额 Float 8 非空 主键:nID;外键:帐号;被参照表:储户表 约束条件:各属性均非空; 定期存款表 序号 字段名称 字段描述 数据类型 长度 属性 1 nID 序号 Int 4 PK 2 CNo 帐号 Varchar 20 非空 3 CName 存款人姓名 Varchar 10 非空 4 CMoney 存款金额 Float 8 非空 5 CDate 存款日期 Datetime 8 非空 6 CYear 存储年份 Int 4 非空 7 CRate 存储利率 Float 8 非空 主键:nID;外键:帐号;被参照表:储户表 约束条件:各属性均非空; 定期取款表 序号 字段名称 字段描述 数据类型 长度 属性 1 nID 序号 Int 4 PK 2 CNo 帐号 Varchar 20 非空 3 CName 取款人姓名 Varchar 10 非空 4 CMoney 取款金额 Float 8 非空 5 CDate 取款日期 Datetime 8 非空 主键:nID;外键:nID;被参照表:定期存款表 约束条件:各属性非空 定期操作登记表 序号 字段名称 字段描述 数据类型 长度 属性 1 nID 序号 Int 4 PK 2 CNo 帐号 Varchar 20 非空 3 CName 存取款人姓名 Float 8 非空 4 CStyle 操作类型 Char 4 非空 5 CMoney 存取款金额 float 8 非空 6 CYear 存储年份 Int 4 非空 7 CDate 存取款日期 Datetime 8 非空 主键:nID;外键:nID;被参照表:定期存款表,定期取款表 约束条件:各属性非空 4.系统功能设计 银行管理系统 银行账户系统管理理 新建账户 删除账户 更改账户 账户管理 退出系统 账户操作 查看账户信息 活期操作 定期操作 活期存取款 查看历史记录 定期存款 定期取款 查看历史记录 数据库管理 数据库备份 数据库恢复 账户登录,身份验证 图4-1银行管理系统功能构造图 5 .系统实现 5.1 系统开发环境 软件:SQL Sever ,VC++6.0 操作系统:Window XP 硬件:Pentiun 4 DDR 512MB 120G硬盘 5.2重要功能运行成果及代码 数据库创立过程及其连接 (1).进入企业管理器窗口,选择“新建SQL Sever注册”; (2).选中“数据库”文献夹,单击鼠标右键,选择“新建数据库”,输入数据库名Bank; (3).单击“确定”按钮,关闭对话框,数据库创立成功。 完毕“账户登录”窗口 ID 控件类型 组员变量 阐明 IDC_EDIT1 CString m_strNo 顾客帐号 IDC_EDIT1 CEdit m_ctrNo IDC_EDIT2 CString m_strPassword 登录密码 IDC_EDIT2 CEdit m_ctrPassword IDC_EDIT3 CString m_strRePassword 确认密码 IDC_EDIT3 CEdit m_ctrRePassword IDOK “OK”按钮 IDCANCLE “Cancle”按钮 (1) 添加记录集类CAccountSet类,基类为CRecordSet,数据表为account表; (2) 在CLoginDlg类中添加CAccontSet类组员变量m_recordset; (3) 为“CBankApp”类添加为CString型组员变量strNO; (4) IDOK控件消息响应函数: void CLoginDlg::OnOK() { UpdateData(TRUE); if (m_strNo == "") { MessageBox("Please Input the Account Number!"); m_ctrNo.SetFocus(); return ; } if (m_strPassword == "") { MessageBox("Please Input the Password!"); m_ctrPassword.SetFocus(); return ; } if (m_strRePassword == "") { MessageBox("Please Input the Confirm Password!"); m_ctrRePassword.SetFocus(); return ; } if (m_strPassword != m_strRePassword) { MessageBox("Two Passwords Are Differed!"); m_strPassword = ""; m_strRePassword = ""; UpdateData(FALSE); m_ctrPassword.SetFocus(); return ; } CString strSQL; strSQL.Format("select * from Account where CNo = '%s'",m_strNo); if (!m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL)) { MessageBox("Open Database Filed!","Database Error",MB_OK); return ; } if (m_recordset.m_CPassword != m_strPassword) { MessageBox("Password Error! Please Rewrite!"); m_recordset.Close(); m_strPassword = ""; m_strRePassword = ""; UpdateData(FALSE); m_ctrPassword.SetFocus(); return ; } CBankApp * ptheApp = (CBankApp *) AfxGetApp(); ptheApp->strNo = m_strNo; CDialog::OnOK(); } (5) 在“CBankApp”类中“InitInstance()”函数中添加登录对话框对象: CLoginDlg dlg; if (dlg.DoModal() != IDOK) { return FALSE; } 完毕“创立新帐户”窗口: ID 控件类型 组员变量 阐明 IDC_COMBO1 CComboBox m_ctrSex 性别 IDC_DATETIMEPICKER1 CTime m_tmDate 开户日期 IDC_EDIT1 CString m_strNo 帐号 IDC_EDIT1 CEdit m_ctrNo IDC_EDIT2 CString m_strName 开户人姓名 IDC_EDIT2 CEdit m_ctrName IDC_EDIT3 CString m_strPassword 密码 IDC_EDIT3 CEdit m_ctrPassword IDC_EDIT4 CString m_strComPassword 确认密码 IDC_EDIT4 CEdit m_ctrComPassword IDC_EDIT5 CString m_strID 身份证号 IDC_EDIT5 CEdit m_ctrID IDC_EDIT6 Double m_bBalance 帐户余额 IDC_EDIT7 CString m_strAddress 开户地址 IDC_EDIT7 CEdit m_ctrAddress IDOK “确定”按钮 IDCANCLE “取消”按钮 (1) 在CAccountDlg类中添加CAccontSet类组员变量m_recordset; (2) 添加记录集类CCurrentSet类,基类为CRecordSet,数据表为current表; (3) 添加初始化对话框OnInitDialog()措施: BOOL CAccountDlg::OnInitDialog() { CDialog::OnInitDialog(); m_tmDate = CTime::GetCurrentTime(); m_ctrSex.AddString("男"); m_ctrSex.AddString("女"); UpdateData(FALSE); return TRUE; } (4) IDOK控件消息响应函数,完毕对帐户表和活期存取款表记录添加。 完毕“删除帐户”功能: 在CMainFrame类中添加菜单消息响应函数,找到目前顾客在账户表中记录,并且判断该帐户与否尚有活期存款和定期存款,假如有记录,则无法删除帐户。 void CMainFrame::OnDeleteAccount() { // TODO: Add your command handler code here CBankApp * ptheApp = (CBankApp *) AfxGetApp(); CString strSQL; strSQL.Format("select * from Account where CNo = '%s'",ptheApp->strNo); CAccountSet recordset; if (!recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL)) { MessageBox("Open Database Filed!","Database Error",MB_OK); return ; } if (MessageBox("确定删除该顾客?","提醒",MB_YESNO) == IDYES) { if (recordset.m_CBalance != 0) { recordset.Close(); MessageBox("顾客账户中活期存款仍存有余额,无法进行销户!"); return ; } CTimeDepositSet tds; CString strRecord; strRecord.Format("select * from TimeDeposit where CNo = '%s'",ptheApp->strNo); if (!tds.Open(AFX_DB_USE_DEFAULT_TYPE,strRecord)) { recordset.Close(); MessageBox("Open Database Filed!","Database Error",MB_OK); return ; } if (tds.GetRecordCount() != 0) { recordset.Close(); tds.Close(); MessageBox("顾客账户中仍存有定期账目,无法销户!"); return ; } recordset.Delete(); recordset.Requery(); recordset.Close(); MessageBox("顾客账户删除成功!"); } else { recordset.Close(); return ; } } 完毕“退出系统”功能: 在CMainFrame类中添加菜单消息响应函数: void CMainFrame::OnExit() { if (MessageBox("确定退出该系统?","提醒",MB_YESNO) == IDYES) { PostQuitMessage(1); return ; } } 完毕“查询账户信息”功能: ID 控件类型 组员变量 阐明 IDC_DATETIMEPICKER1 CTime m_tmDate 开户日期 IDC_EDIT1 CString m_strNo 帐号 IDC_EDIT2 CString m_strName 姓名 IDC_EDIT3 CString m_strAddress 开户地址 IDC_EDIT4 CString m_strBalance 帐户余额 IDC_LIST1 CListCtrl m_ctrList 列表控件 IDOK “确定”按钮 (1)添加初始化对话框OnInitDialog()响应函数,初始化对话框信息; (2)为CAccountInfo类添加void型组员函数RefreshList(),初始化列表信息。- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 课程设计 报告 银行 管理 系统
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文