还剩10页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
摘要银行管理系统在无论在网络上,还是各种管理系统软件的资料上都有讲解,而且均非常详细,其难度也可想而知这次课程设计时间紧迫,另外__本身能力也十分有限,只能完成银行管理系统中的少量功能,所以该系统还有很多有待扩充及完善的地方,有不妥善的地方还请老师指点这次课程设计只是达到训练、牢固知识的目的,熟悉数据库的前台和后台编程、VC++的控件、如何访问数据库等方面的知识,所以实现的功能也很有限,待以后随着知识的积累,慢慢地扩充完善该系统本系统采用了可视化的集成__环境VisualC++
6.0编辑用户操作界面、以SQLSever为后台数据库并以CRecordSet类访问数据库信息的管理系统,该系统能够完成用户帐号的建立、用户存取款、数据备份与恢复等基本功能关键字SQL数据库、SQL语言、VC++、银行管理系统目录1绪论
1.1选题目的及意义……………………………………………
11.2设计内容……………………………………………………12需求分析
2.1功能需求……………………………………………………
12.2数据需求……………………………………………………
12.3其他需求……………………………………………………13数据库设计
3.1概念结构设计………………………………………………
23.2逻辑结构设计………………………………………………
23.3物理结构设计………………………………………………24系统功能设计……………………………………………………45系统实现
5.1__环境………………………………………………
45.2主要功能的运行结果及代码…………………………46总结…………………………………………………………18____(页码再核对一下)1绪论
1.1选题的目的及意义银行管理系统该系统要求建立的用户表并不是很多,完成的功能也相对有限,但其中各个表之间的__很紧密,该系统对数据库表的设计要求会很高,所以完成这个题目,能更好的训练数据库设计和j__a的编程能力,选择该题目就是充分训练数据库表设计的能力和运用j__a的能力
1.2设计内容用户管理模块建立新用户、删除老用户、更改用户操作;账户操作模块账户信息、活期存取款操作、查询活期操作记录、定期存款、定期取款、查询定期操作记录;数据库模块数据库备份、数据库恢复;2需求分析
2.1功能需求对于用户部分,能够新建和删除用户,在操作过程中可以更改用户;对于商品部分,可以查询商品的信息,包括各种商品信息、商品单价、商品__等;对于用户操作部分,有用户登录,用户注册操作,另外操作完成之后存储相应的操作记录并能够查询操作记录等功能
2.2数据需求账户信息帐号varchar20,开户人姓名varchar20,账户__char6,身分证号varchar20,账户余额float,开户日期datetime,开户地址varchar30;活期操作帐号varchar20,金额float,类型存入,支出,账户余额float,利息float,存入日期datetime;定期存款帐号varchar20,存款人姓名varhcar10,存款金额float,存款日期datetime,存储年份int,存储利率float;定期取款帐号varchar20,取款人姓名varhcar10,取款金额float,取款日期datetime;定期历史操作记录帐号varchar20,存取款人姓名varhcar10,类型存入,支出,__日期datetime,存储年份int,存储利率float;
2.3其它需求完成数据库的备份与恢复,系统登录对话框等功能
3.数据库设计
3.1概念结构设计银行管理系统E-R图
3.2逻辑结构设计储户帐号,姓名,__,___号,性别,帐户余额,开户日期,开户地址;活期存取款nID,帐号,金额,类型,__日期,利息,账户余额;定期存款nID,帐号,存款人姓名,金额,存储年份,年利率,存储日期;定期取款nID,帐号,取款人姓名,取款金额,取款日期;定期记录nID,帐号,存取款人姓名,类型,操作金额,年份,操作日期
3.3物理结构设计储户表序号字段名称字段描述数据类型长度属性1CNo帐号Varchar20PK2CName开户人姓名Varhcar20非空3CPassword登录__Char6非空4CID___号Varchar20非空5C___性别Char2非空6CBalan__帐户余额Float8非空7CDate开户日期Datetime8非空8CAddress开户地址Varchar30非空主键帐号;约束条件各属性均非空,__长度为6位;活期存取款表序号字段名称字段描述数据类型长度属性1nID序号Int4PK2CNo帐号Varchar20非空3CMoney操作金额Float8非空4CStyle操作类型Varchar10非空5CDate操作日期Datetime8非空6CInterest利息Float8非空7CBalan__帐户余额Float8非空主键nID;外键帐号;被参照表储户表约束条件各属性均非空;定期存款表序号字段名称字段描述数据类型长度属性1nID序号Int4PK2CNo帐号Varchar20非空3CName存款人姓名Varchar10非空4CMoney存款金额Float8非空5CDate存款日期Datetime8非空6CYear存储年份Int4非空7CRate存储利率Float8非空主键nID;外键帐号;被参照表储户表约束条件各属性均非空;定期取款表序号字段名称字段描述数据类型长度属性1nID序号Int4PK2CNo帐号Varchar20非空3CName取款人姓名Varchar10非空4CMoney取款金额Float8非空5CDate取款日期Datetime8非空主键nID;外键nID;被参照表定期存款表约束条件各属性非空定期操作记录表序号字段名称字段描述数据类型长度属性1nID序号Int4PK2CNo帐号Varchar20非空3CName存取款人姓名Float8非空4CStyle操作类型Char4非空5CMoney存取款金额float8非空6CYear存储年份Int4非空7CDate存取款日期Datetime8非空主键nID;外键nID;被参照表定期存款表,定期取款表约束条件各属性非空
4.系统功能设计图4-1银行管理系统功能结构图
5.系统实现
5.1系统__环境软件SQLSever2000,VC++
6.0操作系统WindowXP硬件Pentiun4DDR512MB120G硬盘
5.2主要功能的运行结果及代码数据库创建过程及其连接
1.进入企业管理器窗口,选择“新建SQLSever注册”;
2.选中“数据库”文件夹,单击鼠标右键,选择“新建数据库”,输入数据库名Bank;
3.单击“确定”按钮,关闭对话框,数据库创建成功完成“账户登录”的窗口ID控件类型成员变量说明IDC_EDIT1CStringm_strNo用户帐号IDC_EDIT1__ditm_ctrNoIDC_EDIT2CStringm_strPassword登录__IDC_EDIT2__ditm_ctrPasswordIDC_EDIT3CStringm_strRePassword确认__IDC_EDIT3__ditm_ctrRePasswordIDOK“OK”按钮IDCANCLE“Cancle”按钮1添加记录集类CAccountSet类,基类为CRecordSet,数据表为account表;2在CLoginDlg类中添加CAccontSet类的成员变量m_recordset;3为“CBankApp”类添加为CString型的成员变量strNO;4IDOK控件的消息响应函数voidCLoginDlg::OnOK{UpdateDataTRUE;ifm_strNo=={MessageBoxPleaseInputtheAccountNumber!;m_ctrNo.SetFocus;return;}ifm_strPassword=={MessageBoxPleaseInputthePassword!;m_ctrPassword.SetFocus;return;}ifm_strRePassword=={MessageBoxPleaseInputtheConfirmPassword!;m_ctrRePassword.SetFocus;return;}ifm_strPassword!=m_strRePassword{MessageBoxTwoPasswordsAreDiffered!;m_strPassword=;m_strRePassword=;UpdateDataFALSE;m_ctrPassword.SetFocus;return;}CStringstrSQL;strSQL.For__tselect*fromAccountwhereCNo=%sm_strNo;if!m_recordset.OpenAFX_DB_USE_DEFAULT_TYPEstrSQL{MessageBoxOpenDatabaseFiled!DatabaseErrorMB_OK;return;}ifm_recordset.m_CPassword!=m_strPassword{MessageBoxPasswordError!PleaseRewrite!;m_recordset.Close;m_strPassword=;m_strRePassword=;UpdateDataFALSE;m_ctrPassword.SetFocus;return;}CBankApp*ptheApp=CBankApp*AfxGetApp;ptheApp-strNo=m_strNo;CDialog::OnOK;}5在“CBankApp”类中的“InitInstan__”函数中添加登录对话框的对象CLoginDlgdlg;ifdlg.DoModal!=IDOK{returnFALSE;}完成“创建新帐户”的窗口ID控件类型成员变量说明IDC_COMBO1CComboBoxm_ctr___性别IDC_DATETIMEPICKER1CTimem____ate开户日期IDC_EDIT1CStringm_strNo帐号IDC_EDIT1__ditm_ctrNoIDC_EDIT2CStringm_strName开户人姓名IDC_EDIT2__ditm_ctrNameIDC_EDIT3CStringm_strPassword__IDC_EDIT3__ditm_ctrPasswordIDC_EDIT4CStringm_strComPassword确认__IDC_EDIT4__ditm_ctrComPasswordIDC_EDIT5CStringm_strID___号IDC_EDIT5__ditm_ctrIDIDC_EDIT6Doublem_bBalan__帐户余额IDC_EDIT7CStringm_strAddress开户地址IDC_EDIT7__ditm_ctrAddressIDOK“确定”按钮IDCANCLE“取消”按钮1在CAccountDlg类中添加CAccontSet类的成员变量m_recordset;2添加记录集类CCurrentSet类,基类为CRecordSet,数据表为current表;3添加初始化对话框OnInitDialog方法BOOLCAccountDlg::OnInitDialog{CDialog::OnInitDialog;m____ate=CTime::GetCurrentTime;m_ctr___.AddString男;m_ctr___.AddString女;UpdateDataFALSE;returnTRUE;}4IDOK控件的消息响应函数,完成对帐户表和活期存取款表的记录添加完成“删除帐户”的功能在C__inFrame类中添加菜单的消息响应函数,找到当前用户在账户表中的记录,并且判断该帐户是否还有活期存款和定期存款,如果有记录,则无法删除帐户voidC__inFrame::OnDeleteAccount{//TODO:Addyourcom__ndhandlercodehereCBankApp*ptheApp=CBankApp*AfxGetApp;CStringstrSQL;strSQL.For__tselect*fromAccountwhereCNo=%sptheApp-strNo;CAccountSetrecordset;if!recordset.OpenAFX_DB_USE_DEFAULT_TYPEstrSQL{MessageBoxOpenDatabaseFiled!DatabaseErrorMB_OK;return;}ifMessageBox确定删除该用户提示MB_YESNO==IDYES{ifrecordset.m_CBalan__!=0{recordset.Close;MessageBox用户账户中活期存款仍存有余额,无法进行销户!;return;}CTimeDepositSettds;CStringstrRecord;strRecord.For__tselect*fromTimeDepositwhereCNo=%sptheApp-strNo;if!tds.OpenAFX_DB_USE_DEFAULT_TYPEstrRecord{recordset.Close;MessageBoxOpenDatabaseFiled!DatabaseErrorMB_OK;return;}iftds.GetRecordCount!=0{recordset.Close;tds.Close;MessageBox用户账户中仍存有定期账目,无法销户!;return;}recordset.Delete;recordset.Requery;recordset.Close;MessageBox用户账户删除成功!;}else{recordset.Close;return;}}完成“退出系统”的功能在C__inFrame类中添加菜单的消息响应函数voidC__inFrame::OnExit{ifMessageBox确定退出该系统提示MB_YESNO==IDYES{PostQuitMessage1;return;}}完成“查询账户信息”的功能ID控件类型成员变量说明IDC_DATETIMEPICKER1CTimem____ate开户日期IDC_EDIT1CStringm_strNo帐号IDC_EDIT2CStringm_strName姓名IDC_EDIT3CStringm_strAddress开户地址IDC_EDIT4CStringm_strBalan__帐户余额IDC_LIST1CListCtrlm_ctrList列表控件IDOK“确定”按钮1添加初始化对话框OnInitDialog响应函数,初始化对话框信息;2为CAccountInfo类添加void型的成员函数RefreshList,初始化列表信息活期存取款存储帐号银行储户开户地址姓名性别帐户余额开户日期_____号定期存取款定期操作记录活期操作记录银行管理系统银行账户系统管理理新建账户删除账户更改账户账户管理退出系统账户操作查看账户信息活期操作定期操作活期存取款查看历史记录定期存款定期取款查看历史记录数据库管理数据库备份数据库恢复账户登录,身份验证。