银行储蓄管理系统
数据库课程设计报告-银行储蓄管理系统数据库设计[2018年整理]
数据库原理及应用课程设计报告组号:小组成员:学院:专业班级:指导老师:2017/1/10目录第1章概述 (1)1.1设计题目: (1)1.2要求完成的主要任务: (1)第2章需求分析 (6)2.1定义 (6)2.2需求规格说明概览 (6)2.3产品的一般性描述 (7)2.4产品功能 (7)2.5用户特征 (7)2.6功能划分 (7)2.7用户界面 (8)2.8可维护性 (9)2.9可理解性 (9)2.10可移植性 (9)第3章数据库表结构图 (9)3.1实体联系图 (10)3.2程序流程图 (10)第4章功能与实现 (11)4.1客户端登录功能 (11)4.2客户端主界面功能 (12)4.3客户端开户功能 (12)4.4客户端存款功能 (13)4.5客户端取款功能 (13)4.6客户端转账功能 (14)4.7客户端余额查询功能 (14)4.8客户端修改密码功能 (14)4.9客户端销户功能 (15)4.10服务器端用户注册功能 (15)4.11服务器端修改用户登密码功能 (15)第5章实现及测试 (16)5.1系统开发环境 (16)5.2主要功能模块的实现及测试 (16)5.2.1数据表的建立 (16)5.2.2数据库连接与数据提供 (16)第6章总结 (17)第7章参考文献 (17)第1章概述本软件实现银行的活期储蓄存款业务。
整套软件由客户端程序和服务器端程序构成,客户端运行在面向个人业务的银行柜台的电脑上,银行职员输入相关信息并通过网络通讯向服务器发送请求,并接受服务器端程序的应答显示处理的结果。
服务器端处理客户端的各种业务请求。
主要实现银行开户、销户、取款、存款、余额查询、转账、修改密码、打印账户明细记录等功能。
1.1 设计题目:题目:银行储蓄管理系统数据库设计本课程的设计的目的是通过实践使同学们经历数据库设计开发的全过程和受到一次综合训练,以便能较全面地理解、掌握和综合运用所学的知识。
结合具体的开发案例,理解并初步掌握系统分析、系统设计、系统实施的主要环节和步骤以及软件文档的制作能力。
bam银行账户管理系统(java类)
BAM银行账户管理系统(ATM管理系统)本系统采用JAVA语言并在eclipse环境下编写测试完成,涉及类的概念,以及面向对象的几大特性(继承,封装,多态,抽象),也有异常处理机制,基本可以满足大多数BAM 系统的相关实现,且代码标注大量注释,读者可以很轻松地理解相关逻辑,大家可以开心参考。
系统简介:1、JAVA类的面相对象的应用,拥有异常处理机制,不会因为输入错误而导致程序崩溃2、主要有5个类,即①Account(账户类)②SaveAccount(储蓄账户类):不能透支③CreditAccount(信用账户类):可以透支④Bank(银行类)⑤ATM(ATM类)类的具体属性级行为见代码3、各个类之间的相互关系,涉及继承、封装、多态、抽象,在多态中又涉及重载和重写,请读者注意相关联系(关注注释)4、可以实现数据保存功能,数据将保存在文件中(即当你注册了一个账户,下次再登陆系统时,可以实现与上次最后的操作相衔接)5、账户号自动生成,比较符合现实6、主要功能有:1.开户2.查询账户余额3.存款4.取款5.转账(一个账户到另一个账户)等……7、运行时界面简示1.初始界面(账户登录)2.账户登录后界面注意事项:1、本系统采用的编程环境是,jer7。
所以,运行代码需要保持电脑上所装的JDK为以上版本,如有报错,只需换个高一点的版本即可。
注意:第一次装JDK,要配置环境变量(请查阅相关资料,比较简单)2、本系统代码涉及到包,所以如果报名不一致就会报错,解决方法:修改一下包名即可3、建议把各个类写在同一个包下面,且每一个类单独写一个java文件,如下图:4、在运行程序前,需要在项目下面新建一个(用来保存数据)文件(如上图),并在其中写入至少一个账户信息,(如下图,其中每项代表的意思,请读者参照代码的注释),否则在初始化的时候会因为找不到账户信息,从而产生异常。
系统源码:Account类package .qx;蓄账户 2.信用账户*/public abstract class Account {x;/*** 储蓄账户类*/public class SavingAccount extends Account {x;/*** 信用账户类,增加一个信用额度ceiling属性*/public class CreditAccount extends Account{private int ceiling;x;import * Bank类* 编写Bank类,属性:1.当前所有的账户对象的集合,存放在数组中2.当前账户数量方法:1.用户开户,需要的参数:id,密码,密码确认,姓名,身份证,账户类型,返回新创建的Account对象的账号,提示:用(s2) 可以比较s1,s2两个字符串的值是否相等.账户类型是一个整数,为0的时候表示储蓄账户,为1的时候表示信用账户2.用户登录,参数:id,密码返回登录账户的账号3.用户存款,参数:id,存款数额,返回void4.用户取款,参数:id,取款数额,返回void5.查询余额,参数:id,返回该账户的余额 double用户会通过调用Bank对象以上的方法来操作自己的账户,请分析各个方法需要的参数 */public class Bank {private Account[] accounts = new Account[20];private int number;quals("0")){Account savingAcc = new SavingAccount(str[0]),str[1].toString(), str[2].toString(),str[3].toString(),(str[4]),(str[5]));accounts[number] = savingAcc;}else{Account creditAcc = new CreditAccount(str[0]),str[1].toString(), str[2].toString(),str[3].toString(),(str[4]),(str[5]),5000);accounts[number] = creditAcc;}number ++;id++;s = ();}} catch (NumberFormatException e) {d+",");(accounts[i].getPassword()+",");(accounts[i].getName()+",");(accounts[i].getPersonId()+",");(accounts[i].getAccountType()+",");(accounts[i].getBalance()));();}else{break;}}();etId() && (accounts[i].getPassword())){account = accounts[i];break;}}else{break;}}return account;}/*** 转账验证(方法的重载)*/public Account verifyAccount(long id){Account account = null;for(int i = 0;i < ;i++){ etId()){account = accounts[i];break;}}else{break;}}return account;}/*** 转账*/public void transferAccount(Account account1, Account account2, double money){ (money);(money);}/*** 存款*/public void deposit(Account account, double money){(money);}/*** 取款*/public void withdraw(Account account, double money){ (money);}}ATM类package .qx;import * ATM类,提供用户界面操作*/public class ATM {已有账户登录");" *2.没有账户,开户");" *3.退出");Scanner scanner = new Scanner;"请选择:");try {int choice1 = ();switch(choice1){case 1:scanner = new Scanner;"请输入银行卡号:");long id = ();scanner = new Scanner;"请输入银行密码:");String password = ();Account account = (id, password);if(account != null){ 询账户余额");" *2.存款");" *3.取款");" *4.转账");" *5.退卡");scanner = new Scanner;"请选择:");try {int choice2 = ();switch(choice2){case 1:"您账户的当前余额为:"+());break;case 2:scanner = new Scanner;"请输入您的存款金额:");double money1 = ();(account, money1);break;case 3:scanner = new Scanner;"请输入您的取款金额:");double money2 = ();(account, money2);break;case 4:scanner = new Scanner;"请输入您要转入账户的卡号:");long id2 = ();Account account2 = (id2);if(account2 != null){scanner = new Scanner;"请输入您要转入账户的金额:");double money = ();if(money <={(account, account2, money);"转账成功!!!");}else{"抱歉,您账户没有足够的金额!请查看后重新选择输入!");}}else{"抱歉,没有找到您要转入的账户信息!请核对后重新选择输入!");}break;case 5:secondFlag = false;break;default:"没有该选项,请重新选择!");break;}} catch (Exception e) {"选择输入不合法,请重新选择!");}}}else{"没有此账户,请先开户!");}break;case 2://账号id由银行自动提供(从1001递增)scanner = new Scanner;"请输入账户密码:");String passwd1 = ();scanner = new Scanner;"请再输入账户密码:");String passwd2 = ();scanner = new Scanner;"请输入户主姓名:");String name = ();scanner = new Scanner;"请输入户主身份证:");String personId = ();scanner = new Scanner;"请输入账户类型(0储蓄,1信用):");int type = ();(passwd1, passwd2, name, personId, type);break;case 3:();firstFlag = false;break;default :"没有该选项,请重新选择!");break;}} catch (Exception e) {"选择输入不合法,请重新选择!");}}"谢谢使用!");}}。
银行账户管理系统c++课程设计
银行账户管理系统c++课程设计一、项目描述银行账户管理系统是一个用于管理银行账户的软件系统。
该系统能够进行账户的开户、存款、取款、转账、查询等功能。
通过该系统,用户可以方便快捷地操作自己的银行账户。
二、功能模块1.开户功能:用户可以通过该功能开设自己的银行账户。
在开户时,需要输入姓名、身份证号码、初始存款金额等信息。
2.存款功能:用户可以通过该功能将自己的钱存入银行账户。
在存款时,需要输入存款金额。
3.取款功能:用户可以通过该功能从自己的银行账户中取出钱。
在取款时,需要输入取款金额。
系统会自动检查账户余额是否足够,并进行相应的操作。
4.转账功能:用户可以通过该功能将自己的账户资金转移到其他账户。
在转账时,需要输入转账金额和目标账户的账号。
系统会自动检查转出账户余额是否足够,并进行相应的操作。
5.查询功能:用户可以通过该功能查询自己的账户余额、交易记录等信息。
系统会根据用户的输入实时查询并显示相应的结果。
三、系统设计1.数据结构设计:可以使用类来表示银行账户,包括账号、姓名、身份证号码、账户余额等属性。
可以使用数组或链表等数据结构来存储账户对象。
2.功能模块设计:可以使用函数来实现不同的功能模块,如开户函数、存款函数、取款函数、转账函数等。
在逻辑上,可以将不同功能模块分别设计为独立的函数,通过用户菜单选择调用相应的函数。
3.用户界面设计:可以使用控制台界面来实现用户交互。
在界面上展示一个菜单,用户可以通过输入菜单项对应的编号来选择不同的功能模块。
四、源代码示例下面是一个简单的银行账户管理系统的源代码示例:```c++#include <iostream>using namespace std;class BankAccount {private:string accountNumber;string name;string idNumber;double balance;public:BankAccount(string accountNumber, string name, string idNumber, double balance) {this->accountNumber = accountNumber;this->name = name;this->idNumber = idNumber;this->balance = balance;}void deposit(double amount) {balance += amount;cout << "成功存入" << amount << "元。
核心银行系统
核心银行系统1. 简介核心银行系统(Core Banking System,简称CBS)是银行业务的核心运营系统,用于处理和管理银行的关键业务,如账户管理、交易处理、清算结算等。
核心银行系统通过集成多个子系统和模块,提供全面的银行业务支持,并与其他金融机构和支付系统进行交互。
本文档将介绍核心银行系统的功能、架构、优势以及使用场景等方面。
2. 功能核心银行系统包含以下主要功能:2.1 账户管理核心银行系统可以管理各类银行账户,包括个人储蓄账户、企业账户、借记卡账户、信用卡账户等。
系统可以记录账户的开户信息、持有人信息、账户余额以及账户状态等。
2.2 交易处理核心银行系统支持各类交易处理,包括存款、取款、转账、支付、兑换等操作。
系统可以根据账户余额、账户状态以及交易限制等条件进行交易处理,并保证交易的安全性和准确性。
2.3 清算结算核心银行系统具有清算结算功能,可以处理大额支付、跨境支付以及实时支付等场景下的支付结算。
系统可以与支付系统进行对接,实现资金划拨、清算核算以及结算确认等操作。
2.4 风险管理核心银行系统可以进行风险管理,包括反洗钱、反欺诈、风险评估等方面的处理。
系统可以监控账户活动、交易行为以及风险指标,及时发现和防范潜在的风险事件。
2.5 报表统计核心银行系统可以生成各类报表和统计数据,包括资金流水报表、客户活动报告、业务数据统计等。
系统可以根据不同需求进行定制化报表,方便银行管理层进行业务分析和决策。
3. 架构核心银行系统通常采用分布式架构,包括前端应用、应用服务器、数据库以及与其他系统的接口。
以下为核心银行系统的典型架构:┌──────────────────────────┐ ┌──────────────────────────┐│ 前端用户界面│ │ 交易接入接口││ (Web、移动端) │ │ (支付系统、其他系统) │└──────────────────────────┘ └──────────────────────────┘│▼ ┌──────────────────────────┐ ┌──────────────────────────┐│ 应用服务器集群│◄───►│ 数据库服务器集群││ (负责业务逻辑和处理) │ │ (存储账户、交易等数据) │└──────────────────────────┘ └──────────────────────────┘4. 优势核心银行系统具有以下优势:4.1 高可靠性核心银行系统采用分布式架构,具有高可靠性和容错性,能够处理高并发的交易请求,并保证交易的准确性和稳定性。
数据库课程设计 银行储蓄管理系统
《数据库系统概论》课程设计报告设计题目:银行储蓄管理系统姓名:学号:班级:设计起止时间:需求分析:在对软件工程相关知识学习之后,我们对设计软件有了基本的认识和一些应用技能。
在数据库的课程设计中,我们计划做一个小型的银行储蓄管理系统,包括了基本的存取转,和管理员对日常工作的管理功能。
功能设计:(1).客户:包括存款,取款,转账,查询余额,查看流水,密码修改功能(2).管理员:新增用户,删除用户,查看用户,员工绩效,VIP用户判别,储备金预警分析。
3.功能流程图:银行管理系统登陆管理员客户销户查看员工绩效VIP判别资金储备金判别开户存款取款转账余额显示查看流水修改密码详细设计:1.E-R图模型operatecustombankstaffCphoneCtimeCpassCRmoneyCnameCidBidSphoneSnameSidSpassSItimeBname BmoneyBid1112.根据E-R 图设计关系表 (1).银行信息表(bank )字段名 字段类型及长度 允许空 主键说明 Bid nchar (9) no PK 银行号 Bname nchar (20) no银行名 Bmoney numeric (20,3) no 银行余额(2).客户信息表(custom )字段名 字段类型及长度 允许空主键说明 Cid nchar (9) noPK 客户ID Cname nchar (10) no 客户姓名 Cpass nchar (10) no 密码 Ctime nchar (20) no注册时间Bid nchar (9) no 所在银行行号 外码(Bank (Bid )) Crmoney numeric (10,3) no账户余额 Cphone nchar (11) no 客户电话 (3).员工(管理员)表(staff ) 字段名 字段类型及长度 允许空主键 说明 Sid nchar (9) noPK 员工ID Sname nchar (10) no 员工姓名 Spass nchar (10) no 登陆密码 SItime nchar (20) no入行时间Sphone nchar(11) no 联系电话(4).流水信息表字段名字段类型及长度允许空主键说明Oid nchar(9) no PK 流水号Cid nchar(9) no 客户ID 外码(Custom(Cid))Bid nchar(9) no 银行ID 外码(Bank(Bid))Sid nchar(9) no 员工ID 外码(Staff(Sid))Otype smallint no 操作类型Otime nchar(20) no 操作时间Omoney numeric(10,3) yes 交易金额OBmoney numeric(10,3) yes 上次余额OAmoney numeric(10,3) yes 账户余额三个实体:bank,staff,custom一个联系:operate关系图:SQL语句:/*建表*/create table Bank(Bid nchar(9) primary key,Bname nchar(20) not null,Bmoney numeric(20,3) not null)create table Custom( Cid nchar(9) not null,Cname nchar(10) not null,Cpass nchar(10) not null,Ctype smallint not null,Ctime nchar(20) not null,Ccode nchar(18) not null,Bid nchar(9) not null,Crmoney numeric(10,3) not null,Cphone nchar(11) not null,primary key(Cid),foreign key(Bid) references Bank(Bid) /*在客户表中以Bank表的主码作为一个外键,并对他进行级联更新*/on update cascade,)create table Staff(Sid nchar(9) primary key, /*在列级定义主码*/Sname nchar(10) not null,Spass nchar(10) not null,SItime nchar(20) not null,Sphone nchar(11) not null)create table Operate(Oid nchar(9) not null,Cid nchar(9) not null,Bid nchar(9) not null,Sid nchar(9) not null,Otype nchar(10) not null,Otime nchar(20) not null,Oflag smallint not null,Omoney numeric(10,3),OBmoney numeric(10,3),OAmoney numeric(10,3),primary key(Oid,Cid,Sid),foreign key (Cid) references Custom(Cid) /*以用户表主码为一个外键,进行级联删除*/on delete cascade,foreign key(Sid) references Staff(Sid) /*以员工表的主码作为外键,当删除引起冲突的时候,拒绝删除*/on delete no action,foreign key (Bid) references Bank(Bid)on update cascade)insert into Bank values('00001','中国银行小寨分行',10000)update Bank set Bname='中国银行经开分行' where Bid='00002'select * from Bank;delete from Bank where Bid='1' or Bid='2';insert into Custom values('6505001','花花','111',0,'2012/12/10/08:26:00','610424************','00001','1500','14345678912')insert into Staff values('7985000','自助服务','111','2002/01/07','12331654613')delete from Custom where Bid='2';insert into Operate values('2406002','6505001','00001','7985001','哈哈','2012年12月18日14时12分',0,0,2900,2900)insert into Operate values('2406005','6505007','00001','7985001','嘿嘿','2012年12月18日14时12分',0,0,2900,2900)select * from Custom;select * from Operate;select * from Staff;select * from Bank;delete from Operatedrop table Customdrop table Bankdrop table Staff;drop table Operate;select * from Bank;delete from Operate where Oid='6505001'drop view BMoney;create view BMoneyasselect Omoneyfrom Operatewhere Oflag = 0 and Omoney>2000 and Otype = '取款';create view BInMoneyasfrom Operatewhere Oflag = 0 and Omoney>2000 and Otype='存款';create view VIPasselect Ctypefrom Customwhere Ctype=1;select count(*) from BMoney;select count(*) from BInMoney;select count(*) from VIP;update Bank set Bmoney='10000' where Bid='00001';update Bank set Bmoney='+bmoney' where Bid='"+Bid+"'";update Bank set Bmoney='10200.000000' where Bid='00001'程序代码:客户部分:a.void CClientDlg::OnButtonIn() //存款函数{// TODO: Add your control notification handler code hereCInDlg InDlg;if (InDlg.DoModal()==IDOK){double temp,temp1;ADOConn ado;CString sql = "select * from Custom where Cname='"+Cname+"'";_RecordsetPtr ResultSet = ado.GetRecordSet((_bstr_t)sql);CString str = (LPCTSTR)(_bstr_t)ResultSet->GetCollect("Crmoney");CString bid = (LPCTSTR)(_bstr_t)ResultSet->GetCollect("Bid");CString str4 = (LPCTSTR)(_bstr_t)ResultSet->GetCollect("Cid");CString str2= str; //将交易前钱数暂存temp=atof(str);temp1=(double)InDlg.m_InNum;temp+=temp1;str.Format("%f",temp);CString str3 = str; //暂存交易后金额sql = "update Custom set Crmoney='"+str+"' "+"where Cname='"+Cname+"'";ado.ExecuteSQL((_bstr_t)sql);sql = "select count(*) num from Operate";ResultSet = ado.GetRecordSet((_bstr_t)sql);int num = atoi((LPCTSTR)(_bstr_t)ResultSet->GetCollect("num"));str = "240600";CString Oid,Cid,Sid,Bid,Otime,Omoney,OAmoney,OBmoney;Oid.Format("%d",++num); Oid=str+Oid;Sid="7985001";Bid = bid; double temp2;sql = "select * from Bank where Bid='"+Bid+"'";ResultSet = ado.GetRecordSet((_bstr_t)sql);CString bmoney = (LPCTSTR)(_bstr_t)ResultSet->GetCollect("Bmoney");temp2 = atof(bmoney); temp2+=temp1; bmoney.Format("%f",temp2);sql = "update Bank set Bmoney='"+bmoney+"' where Bid='"+Bid+"'";ado.ExecuteSQL((_bstr_t)sql);CString Otype = "存款";CString m_time; CTime time;time = CTime::GetCurrentTime();m_time = time.Format("%Y年%m月%d日%X");Otime = m_time; int flag = 0;Omoney.Format("%f",temp1); OAmoney = str2;OBmoney = str3;sql.Format("insert into Operate values('%s','%s','%s','%s','%s','%s',%d,%s,%s,%s)",Oid,str4,Bid,Sid,Otype,m_ time,flag,Omoney,OAmoney,OBmoney);ado.ExecuteSQL((_bstr_t)sql);ado.E xitConnect(); }}b.v oid CClientDlg::OnButtonGet() //取款函数{// TODO: Add your control notification handler code hereCGetDlg GetDlg;;if (GetDlg.DoModal()==IDOK){double temp,temp1;ADOConn ado;CString sql = "select * from Custom where Cname='"+Cname+"'";_RecordsetPtr ResultSet = ado.GetRecordSet((_bstr_t)sql);CString str = (LPCTSTR)(_bstr_t)ResultSet->GetCollect("Crmoney");CString bid = (LPCTSTR)(_bstr_t)ResultSet->GetCollect("Bid");CString str4 = (LPCTSTR)(_bstr_t)ResultSet->GetCollect("Cid");CString str2= str;//将交易前钱数暂存temp=atof(str);temp1=(double)GetDlg.m_GetNum;if (temp>temp1){temp-=temp1; str.Format("%f",temp); CString str3 = str;//暂存交易后金额sql = "update Custom set Crmoney='"+str+"' "+"whereCname='"+Cname+"'";ado.ExecuteSQL((_bstr_t)sql);sql = "select count(*) num from Operate";ResultSet = ado.GetRecordSet((_bstr_t)sql) int num= atoi((LPCTSTR)(_bstr_t)ResultSet->GetCollect("num"));str = "240600";CString Oid,Cid,Sid,Bid,Otime,Omoney,OAmoney,OBmoney;Oid.Format("%d",++num);Oid=str+Oid; Sid="7985001"Bid = bid; double temp2;sql = "select * from Bank where Bid='"+Bid+"'";ResultSet = ado.GetRecordSet((_bstr_t)sql);CString bmoney = (LPCTSTR)(_bstr_t)ResultSet->GetCollect("Bmoney");temp2 = atof(bmoney); temp2-=temp1;bmoney.Format("%f",temp2);sql = "update Bank set Bmoney='"+bmoney+"' whereBid='"+Bid+"'";ado.ExecuteSQL((_bstr_t)sql);CString Otype = "取款";CString m_time; CTime time;time = CTime::GetCurrentTime();m_time = time.Format("%Y年%m月%d日%X");Otime = m_time; int flag = 0;Omoney.Format("%f",temp1);OAmoney = str2;OBmoney = str3; sql.Format("insert into Operate values('%s','%s','%s','%s','%s','%s',%d,%s,%s,%s)",Oid,str4,Bid,Sid,Otype,m_time,flag,Omoney,OAmoney,OBmoney); ado.ExecuteSQL((_bstr_t)sql);ado.ExitConnect();}else{AfxMessageBox("账户余额不足!"); }}}c.void CClientDlg::OnButtonTurn(){/ TODO: Add your control notification handler code hereCTurnDlg TurnDlg;if (TurnDlg.DoModal()==IDOK){ADOConn ado;CString sql = "select * from Custom";_RecordsetPtr ResultSet = ado.GetRecordSet((_bstr_t)sql);int flag = 0;while (!ResultSet->adoEOF)CString TCusId = (LPCTSTR)(_bstr_t)ResultSet->GetCollect("Cid");CString TCusMon = (LPCTSTR)(_bstr_t)ResultSet->GetCollect("Crmoney"); //收钱客户在操作前的余额CString str5 = TCusMon; TCusId.Remove(' ');if (TCusId==TurnDlg.m_TurnId){double temp,temp1;sql = "select * from Custom where Cname='"+Cname+"'";ResultSet = ado.GetRecordSet((_bstr_t)sql);CString str = (LPCTSTR)(_bstr_t)ResultSet->GetCollect("Crmoney");CString bid = (LPCTSTR)(_bstr_t)ResultSet->GetCollect("Bid");CString str4 = (LPCTSTR)(_bstr_t)ResultSet->GetCollect("Cid");CString str2= str; //将交易前钱数暂存temp=atof(str);temp1=(double)TurnDlg.m_TurnNum; if (temp>temp1){flag = 1;temp-=temp1; //住客户钱数减少str.Format("%f",temp);CString str3 = str; //暂存交易后金额sql = "update Custom set Crmoney='"+str+"' "+"where Cname='"+Cname+"'";do.ExecuteSQL((_bstr_t)sql); temp=atof(TCusMon);//收钱客户钱数增加temp+=temp1;TCusMon.Format("%f",temp); sql = "update Custom set Crmoney='"+TCusMon+"' "+"where Cid='"+TCusId+"'";ado.ExecuteSQL((_bstr_t)sql); sql = "select count(*) num from Operate";ResultSet = ado.GetRecordSet((_bstr_t)sql);int num = atoi((LPCTSTR)(_bstr_t)ResultSet->GetCollect("num"));str = "240600";CString Oid,Cid,Sid,Bid,Otime,Omoney,OAmoney,OBmoney;int Otype; Oid.Format("%d",++num); Oid=str+Oid;Sid="7985001";Bid = bid; Otype = 2; CString m_time; CTime time;time = CTime::GetCurrentTime();m_time = time.Format("%Y年%m月%d 日%X");Otime = m_time; Omoney.Format("%f",temp1);OAmoney = str2; OBmoney = str3;sql.Format("insert into Operate values('%s','%s','%s','%s',%d,'%s',%s,%s,%s)",Oid,str4,Bid,Sid,Otype,m_time ,Omoney,OAmoney,OBmoney); ado.ExecuteSQL((_bstr_t)sql);sql.Format("insert into Operate values('%s','%s','%s','%s',%d,'%s',%s,%s,%s)",TCusId,str4,Bid,Sid,Otype,m_t ime,Omoney,str5,TCusMon); ado.ExecuteSQL((_bstr_t)sql);ado.ExitConnect();break; }else{AfxMessageBox("账户余额不足!");break; }}ResultSet->MoveNext();}if(flag==0){AfxMessageBox("该账户不存在!"); }}}d.v oid CClientDlg::OnButtonHistoy() //历史记录查询{// TODO: Add your control notification handler code hereCShowHistory showDlg;ame = Cname;showDlg.DoModal();}e.v oid CClientDlg::OnButtonAlter(){// TODO: Add your control notification handler code hereCAlterDlg alteDlg;if(alteDlg.DoModal()==IDOK){ if (alteDlg.m_AItem==0){if (alteDlg.m_Alter1==alteDlg.m_Alter2) {ADOConn ado; CString sql = "update Custom set Cname='"+alteDlg.m_Alter1+"' where Cname='"+Cname+"'";ado.ExecuteSQL((_bstr_t)sql);AfxMessageBox("姓名修改成功!"); }else {AfxMessageBox("两次姓名输入不一致,请重新输入!"); }}else if(alteDlg.m_AItem==1){if (alteDlg.m_Alter1==alteDlg.m_Alter2) { ADOConn ado;CString sql = "update Custom set Cpass='"+alteDlg.m_Alter1+"' whereCname='"+Cname+"'";ado.ExecuteSQL((_bstr_t)sql); AfxMessageBox("密码修改成功!"); }else{AfxMessageBox("两次密码输入不一致,请重新输入!"); }elseif (alteDlg.m_Alter1==alteDlg.m_Alter2){if (alteDlg.m_Alter1.GetAt(0)=='1'&&alteDlg.m_Alter1.GetLength()==11)ADOConn ado; CString sql = "update Custom setCphone='"+alteDlg.m_Alter1+"' where Cname='"+Cname+"'";ado.ExecuteSQL((_bstr_t)sql); AfxMessageBox("电话号码修改成功!"); }else {AfxMessageBox("电话号码格式不对!");} } else{AfxMessageBox("两次电话输入不一致,请重新输入!"); } }}}管理员部分:a.void CStaffDlg::OnButtonInsert() //添加新成员{// TODO: Add your control notification handler code hereCInsertDlg insertDlg;if (insertDlg.DoModal()==IDOK){if (insertDlg.m_Phone.GetAt(0)=='1'&&insertDlg.m_Phone.GetLength()==11){ADOConn ado;CString sql = "select count(*) Num from Custom whereCcode='"+insertDlg.m_Code+"'";_RecordsetPtr ResultSet = ado.GetRecordSet((_bstr_t)sql);int Num = atoi((LPCTSTR)(_bstr_t)ResultSet->GetCollect("Num"));if (Num==0){CString str = "650500";sql = "select count(*) num from Custom";ResultSet = ado.GetRecordSet((_bstr_t)sql);Num = atoi((LPCTSTR)(_bstr_t)ResultSet->GetCollect("num"));CString Cid,Cpass,Bid,Pmoney; double dou;Cid.Format("%d",++Num); Cid = str+Cid;Cpass = "000000";CString m_time; Bid= "00001";CTime time; time = CTime::GetCurrentTime();m_time = time.Format("%Y年%m月%d日%X");dou = (double)insertDlg.m_Pmoney;Pmoney.Format("%f",dou);// Otime = m_time; sql.Format("insert into Custom values('%s','%s','%s','%s',%s,'%s',%s,%s)",Cid,insertDlg.m_Name,Cpass,m_time,insertDlg.m_Code,Bid,Pmoney,insertDlg.m_Phone);ado.ExecuteSQL((_bstr_t)sql);sql = "select count(*) num from Operate";ResultSet = ado.GetRecordSet((_bstr_t)sql);Num = atoi((LPCTSTR)(_bstr_t)ResultSet->GetCollect("num"));CString Oid,OAmoney,Otype; Otype = "新注册";Oid.Format("%d",++Num);str = "240600";Oid = str+Oid; Bid= "00001";int flag = 0; OAmoney = "0";sql.Format("insert into Operatevalues('%s','%s','%s','%s','%s','%s',%d,%s,%s,%s)",Oid,Cid,Bid,Sid,Otype,m_time,flag,Pmoney,OAmoney,Pmoney); ado.ExecuteSQL((_bstr_t)sql);AfxMessageBox("新增客户成功!"); }else{AfxMessageBox("该证件号已经注册!"); }}}b.void CStaffDlg::OnButtonDelete() //注销客户{// TODO: Add your control notification handler code hereCDelDlg delDlg;if (delDlg.DoModal()==IDOK){if (delDlg.m_DelId1==delDlg.m_DelId2){ADOConn ado;count(*) Num from Custom where Cid='"+delDlg.m_DelId1+"'";_RecordsetPtr ResultSet = ado.GetRecordSet((_bstr_t)sql);int Num = atoi((LPCTSTR)(_bstr_t)ResultSet->GetCollect("Num"));if (Num!=0){CString str = "650500";sql = "delete from Custom whereCid='"+delDlg.m_DelId1+"'";ado.ExecuteSQL((_bstr_t)sql); CString Bid,Cid;Cid = "6505000";CString m_time;CTime time; time = CTime::GetCurrentTime();m_time = time.Format("%Y年%m月%d日%X");sql = "select count(*) numfrom Operate";ResultSet = ado.GetRecordSet((_bstr_t)sql);Num = atoi((LPCTSTR)(_bstr_t)ResultSet->GetCollect("num"));CString Oid,OAmoney,Otype; Otype = "注销用户";Oid.Format("%d",++Num);tr = "240600";Oid = str+Oid; Bid= "00001";int flag = 2; OAmoney = "0";sql.Format("insert into Operatevalues('%s','%s','%s','%s','%s','%s',%d,%s,%s,%s)",Oid,Cid,Bid,Sid,Otype,m_time,flag,OAmoney,OAmoney,OAmoney); ado.ExecuteSQL((_bstr_t)sql);AfxMessageBox("注销客户成功!"); }else{AfxMessageBox("不存在该用户!"); }}else {AfxMessageBox("两次输入用户ID不一致,请重新输入!"); }}}c.void CStaffDlg::OnButtonResher() 查询客户{// TODO: Add your control notification handler code hereCAlterDlg altDlg; if (altDlg.DoModal()==IDOK){if (altDlg.m_AItem==0) {if (altDlg.m_Alter1==altDlg.m_Alter2) {ADOConn ado;CString sql = "update Staff set Sname='"+altDlg.m_Alter1+"' whereSname='"+Sname+"'";ado.ExecuteSQL((_bstr_t)sql);AfxMessageBox("姓名修改成功!");}else{AfxMessageBox("两次姓名输入不一致,请重新输入!"); }} else if(altDlg.m_AItem==1){if (altDlg.m_Alter1==altDlg.m_Alter2){ADOConn ado;CString sql = "update Custom set Spass='"+altDlg.m_Alter1+"' where Sname='"+Sname+"'";ado.ExecuteSQL((_bstr_t)sql); AfxMessageBox("密码修改成功!"); }else{AfxMessageBox("两次密码输入不一致,请重新输入!"); }}else{if (altDlg.m_Alter1==altDlg.m_Alter2){if (altDlg.m_Alter1.GetAt(0)=='1'&&altDlg.m_Alter1.GetLength()==11){ADOConn ado;CString sql = "update Custom set Sphone='"+altDlg.m_Alter1+"' where Sname='"+Sname+"'";ado.ExecuteSQL((_bstr_t)sql);AfxMessageBox("电话号码修改成功!"); }else{AfxMessageBox("电话号码格式不对!");} }else{AfxMessageBox("两次电话输入不一致,请重新输入!"); } } }d.void CStaffDlg::OnButtonMoneyctrl() //资金管理{// TODO: Add your control notification handler code hereCSerchDlg serDlg;if (serDlg.DoModal()==IDOK){ADOConn ado;CString sql = "select count(*) Num from Custom where Cid='"+serDlg.m_Cid+"'";_RecordsetPtr ResultSet = ado.GetRecordSet((_bstr_t)sql);int Num = atoi((LPCTSTR)(_bstr_t)ResultSet->GetCollect("Num"));if (Num!=0){CCusInfoDlg cusDlg;cusDlg.Cid = serDlg.m_Cid ADOConn ado;CString sql = "select * from Custom where Cid='"+cusDlg.Cid+"'";_RecordsetPtr ResultSet = ado.GetRecordSet((_bstr_t)sql);cusDlg.m_Cname = (LPCTSTR)(_bstr_t)ResultSet->GetCollect("Cname");cusDlg.m_Cid = (LPCTSTR)(_bstr_t)ResultSet->GetCollect("Cid");cusDlg.m_Code = (LPCTSTR)(_bstr_t)ResultSet->GetCollect("Ccode");cusDlg.m_Phone = (LPCTSTR)(_bstr_t)ResultSet->GetCollect("Cphone");cusDlg.m_Rmoney = (LPCTSTR)(_bstr_t)ResultSet->GetCollect("Crmoney");cusDlg.DoModal();ado.ExitConnect();}else{AfxMessageBox("不存在该客户!"); }}}e.void CStaffDlg::OnButtonAlter() //信息修改{CMoneyDlg monDlg; ADOConn ado;CString sql = "select count(*) Num from BMoney ";_RecordsetPtr ResultSet = ado.GetRecordSet((_bstr_t)sql);monDlg.m_GetNum = atoi((LPCTSTR)(_bstr_t)ResultSet->GetCollect("Num"));sql = "select count(*) Num from BInMoney";ResultSet = ado.GetRecordSet((_bstr_t)sql);monDlg.m_InNum = atoi((LPCTSTR)(_bstr_t)ResultSet->GetCollect("Num"));sql = "select count(*) Num from VIP";ResultSet = ado.GetRecordSet((_bstr_t)sql);monDlg.m_VIPNum= atoi((LPCTSTR)(_bstr_t)ResultSet->GetCollect("Num"));sql = "select * from Bank where Bid='00001'";ResultSet = ado.GetRecordSet((_bstr_t)sql);monDlg.m_Cash = (LPCTSTR)(_bstr_t)ResultSet->GetCollect("Bmoney");ado.ExitConnect();monDlg.DoModal();}f.void CStaffDlg::OnButtonAnyse() //员工业绩分析{// TODO: Add your control notification handler code hereCStaffIDlg staDlg;staDlg.DoModal();}心得体会:这次课程设计体会非常深刻,首先在团队合作方面,我觉得自己作为队长没有两道好我的小队,这是我的失职。
数据库原理课程设计银行储蓄管理系统
目录一、需求与功能分析 1二、系统总体框架 2三、逻辑设计 2四、类的设计与分析 4五、数据库表结构设计 8六、特色算法分析 8七、功能测试 9八、存在的不足与对策 12九、程序源代码 12银行储蓄管理系统一银行储蓄系统需求分析系统功能简介:信息系统:主要是在里面输入用户信息(户名,帐号,开户日期)主要功能:记录用户所要进行的各种存取操作(存钱,取钱),并对操作数据做好记录记录时间:主要是记录每个用户开户,存取,取钱的日期相关金额:该用户的存款金额,取款金额,执行操作后账户余额保存系统:可以以连接数据库模式保存查询过的内容,对于刚刚查询过的内容不必重复登陆工作环境:该程序可用在各种银行性质的单位,能有效管理用户信息。
方便,快捷,容易上手,安全保密,资料齐整构造该程序,主要是使用C++ & SQL系统。
在MS-DOS以及WINDOWS95以上的操作系统上可以正常运行。
现今的社会,资金流动十分频繁。
不单单是企业、厂商,连个人也不例外。
银行作为一个金融机构,在现代人们的生活中扮演着及其重要的角色。
为生活节奏飞快的现代人提供快速、便捷、高效理财服务,是每一个银行机构的共同职责。
伴随着电脑技术的发展,各大银行储蓄管理软件也随之出现在这一舞台之上。
银行储蓄管理程序的主要功能就是记录用户的账户信息,已经对用户的存取款操作作好记录及数据更新。
银行储蓄管理的特点是数据量大。
数据更新频繁。
因此便捷的操作,数据更新准确度,成了这一系统的主要指标。
二系统总框图三逻辑设计任何建模语言都以静态建模机制为基础,标准建模语言UML也不例外。
所谓静态建模是指对象之间通过属性互相联系,而这些关系不随时间而转移。
类和对象的建模,是UML建模的基础。
面向对象的开发方法的基本任务是建立对象模型,是软件系统开发的基础。
UML中的对象类图表达了对象模型的静态结构,能够有效地建立专业领域的计算机系统对象模型。
图1 系统类图动态模型主要描述系统的动态行为和控制结构。
银行储蓄业务管理系统介绍
银行储蓄业务管理系统介绍一、系统概述银行储蓄业务管理系统是一种基于计算机技术的银行业务管理系统,旨在帮助银行实现对储蓄业务的高效管理和操作。
通过该系统,银行可以方便地处理客户的储蓄业务,提供相关的查询、统计和报表功能,提高业务处理的效率和准确性。
二、系统功能银行储蓄业务管理系统主要包括以下功能模块:1. 客户管理该模块用于管理银行的客户信息,包括客户基本信息、联系方式、开户信息等。
系统管理员可以使用该功能进行客户信息录入、修改和删除等操作,同时还可以实现客户信息的批量导入导出。
2. 储蓄账户管理该模块用于管理客户的储蓄账户信息,包括账户类型、开户日期、余额、利率等。
系统管理员可以使用该功能进行账户信息的开通、销户、挂失和冻结等操作,同时还可以实现账户余额的查询、修改和统计等功能。
3. 存款业务管理该模块用于管理客户的存款业务,包括存款方式、存入金额、存款日期等。
系统管理员可以使用该功能进行存款业务的录入、修改和删除等操作,同时还可以实现存款业务的查询、统计和报表生成等功能。
4. 取款业务管理该模块用于管理客户的取款业务,包括取款方式、取款金额、取款日期等。
系统管理员可以使用该功能进行取款业务的录入、修改和删除等操作,同时还可以实现取款业务的查询、统计和报表生成等功能。
5. 转账业务管理该模块用于管理客户的转账业务,包括转入账户、转出账户、转账金额、转账日期等。
系统管理员可以使用该功能进行转账业务的录入、修改和删除等操作,同时还可以实现转账业务的查询、统计和报表生成等功能。
6. 利息结算管理该模块用于管理客户的利息结算业务,包括计算利息、发放利息等。
系统管理员可以使用该功能进行利息结算业务的操作,并可以实现利息的查询、统计和报表生成等功能。
7. 客户服务管理该模块用于管理客户的服务请求,包括客户投诉、咨询、建议等。
系统管理员可以使用该功能进行服务请求的处理,并可以实现服务请求的查询、统计和报表生成等功能。
Java银行管理系统项目描述
Java银行管理系统项目描述1. 介绍Java银行管理系统是一个基于Java编程语言开发的系统,用于管理银行的各种业务。
银行作为金融机构,需要有一个高效可靠的系统来处理客户的存款、取款、转账等操作,同时也需要对账户信息、交易记录进行管理。
Java银行管理系统正是为了满足这些需求而设计的。
2. 功能Java银行管理系统拥有以下主要功能:2.1 客户管理系统可以管理银行的客户信息。
客户可以通过系统注册新账户或者使用已有账户进行登录。
在客户管理模块中,可以进行以下操作: - 添加新客户:输入客户姓名、身份证号、联系方式等信息,系统将为客户生成一个唯一的账户ID。
- 修改客户信息:可以修改客户的姓名、联系方式等信息。
- 查看客户信息:可以根据客户ID或者姓名查看客户的详细信息。
2.2 账户管理系统可以管理客户的银行账户。
在账户管理模块中,可以进行以下操作: - 开户:为客户创建一个新的银行账户,包括账户类型、账户余额、利率等信息。
- 销户:关闭客户的银行账户,同时清空账户余额。
- 存款:向账户中存入指定金额。
- 取款:从账户中取出指定金额。
- 转账:将一个账户的金额转到另一个账户。
2.3 交易记录管理系统可以记录并管理客户的账户交易记录。
在交易记录管理模块中,可以进行以下操作: - 查看交易记录:查询指定账户的交易记录,包括交易时间、交易类型、交易金额等信息。
- 导出交易记录:将指定账户的交易记录导出为Excel或CSV文件。
2.4 报表统计系统可以根据客户的账户信息、交易记录生成相关的统计报表。
在报表统计模块中,可以进行以下操作: - 客户账户统计:统计不同类型账户的数量、总余额等信息。
- 交易汇总统计:统计不同类型交易的数量、总金额等信息。
3. 技术实现Java银行管理系统采用Java编程语言进行开发,使用MVC(模型-视图-控制器)架构来实现系统的模块化管理。
主要的技术实现包括: - Java SE:系统的核心部分采用Java SE进行编码,包括客户管理、账户管理、交易记录管理、报表统计等模块。
c银行储蓄管理系统课程设计
c 银行储蓄管理系统课程设计一、教学目标本课程旨在让学生了解和掌握银行储蓄管理的基本原理和方法,培养学生运用编程技能解决实际问题的能力。
具体目标如下:1.知识目标:使学生掌握银行储蓄管理的基本概念、业务流程和常用算法;了解编程语言在银行储蓄管理中的应用。
2.技能目标:培养学生使用编程语言进行银行储蓄管理系统的开发和调试;培养学生独立分析问题、解决问题的能力。
3.情感态度价值观目标:培养学生对银行储蓄管理工作的热爱和敬业精神,提高学生对社会金融行业的认识和责任感。
二、教学内容1.银行储蓄管理概述:介绍银行储蓄管理的定义、作用和业务范围。
2.银行储蓄业务流程:讲解银行储蓄业务的各个环节,包括开户、存钱、取钱、转账等。
3.常用算法:介绍在银行储蓄管理中常用的算法,如排序、查找等。
4.编程语言应用:学习编程语言的基本语法,掌握使用编程语言实现银行储蓄管理系统的关键技术。
5.项目实践:以小组为单位,学生自主设计并开发一个简单的银行储蓄管理系统。
三、教学方法1.讲授法:教师讲解银行储蓄管理的基本概念、业务流程和常用算法。
2.案例分析法:分析实际案例,让学生了解编程语言在银行储蓄管理中的应用。
3.实验法:学生动手实践,开发和调试银行储蓄管理系统。
4.讨论法:分组讨论,引导学生独立分析问题、解决问题。
四、教学资源1.教材:选用国内权威出版社出版的银行储蓄管理教材。
2.参考书:推荐学生阅读与银行储蓄管理相关的国内外经典著作。
3.多媒体资料:制作课件、视频等,为学生提供丰富的学习资源。
4.实验设备:为学生提供计算机、网络等实验设备,确保实验教学的顺利进行。
五、教学评估本课程的教学评估将采用多元化的评估方式,以全面、客观、公正地评价学生的学习成果。
评估方式包括:1.平时表现:评估学生在课堂上的参与程度、提问回答等情况,以考察学生的学习态度和积极性。
2.作业:布置课后作业,评估学生的理解和应用能力,以及对银行储蓄管理知识掌握的程度。
软件工程课程设计银行储蓄管理系统
目录1 问题定义 (2)2 可行性研究 (2)2.1 项目概述 (2)2.2 可行性分析的前提 (2)2.2.1 项目的目标 (2)2.2.2 项目的环境 (3)2.3 可选的方案 (3)2.3.1 方案一 (3)2.3.2 方案二 (3)2.4 所建议的系统 (3)2.4.1 系统说明 (3)2.4.2 系统流程图 (3)2.4.3 高级数据流图 (4)2.5 经济可行性 (5)2.5.1系统开发费用 (5)2.5.2系统运行费用 (5)2.5.3效益 (5)2.6技术可行性 (6)2.7 操作可行性 (6)3 需求分析 (6)3.1 需求概述 (6)3.2 需求模型 (6)3.2.1 数据模型 (6)3.2.2 功能模型 (8)3.2.3 行为模型 (9)3.2.4 数据字典 (10)4 总体设计 (11)4.1 系统体系结构 (11)4.2 模块详细说明 (12)4.3 数据库设计 (13)5 详细设计 (14)5.1 人机界面设计 (14)5.2 过程设计 (17)6 测试 (17)6.1 白盒测试 (18)6.2黑盒测试 (18)7 结论 (19)8参考文献 (19)9 附录 (20)9.1程序代码 (20)1 问题定义账户管理是银行业务流程过程中十分重要且必备的环节之一,在银行业务流程当中起着承上启下的作用,其重要性不言而喻。
但是,目前许多银行在具体的业务流程处理过程中仍然使用手工操作的方式来实施,不仅费时、费力,效率低下,而且无法达到理想的效果。
本文针对上述问题,采用软件工程的开发原理,依据软件流程过程规范,按照需求分析、概要设计、详细设计、程序编码、测试、软件应用、软件维护等过程开发了一个银行账户管理系统。
采用VSC++作为开发工具,数据库设计遵循3范式,主要设计了用户基本信息表、用户卡信息表、ATM取款机基本信息表、用户银行存款信息表、管理系统的用户口令表、银行系统的用户信息表等数据表。
银行储蓄管理系统概要设计说明书
GB 8567-2023银行储蓄管理系统概要设计说明书撰写人: 施靖豆健美雷明昊王新尧***: **日期: 2023-4-6目录1引言 ............................................................................................ 错误!未定义书签。
1.1编写目的 ......................................................................................... 错误!未定义书签。
1.2背景................................................................................................... 错误!未定义书签。
1.3定义................................................................................................... 错误!未定义书签。
1.4参考资料 ......................................................................................... 错误!未定义书签。
2总体设计 .................................................................................... 错误!未定义书签。
2.1需求规定 ......................................................................................... 错误!未定义书签。
java银行管理系统
Java银行管理系统简介Java银行管理系统是一款基于Java编程语言开发的银行业务管理软件。
该系统提供了一套完整的银行业务功能,包括账户管理、存款、取款、转账、查询等操作,为银行机构提供了方便快捷的业务处理方式。
功能特点1. 账户管理•注册新账户:用户可以通过银行管理系统注册新账户,包括输入新账户的姓名、身份证号码、地址等信息。
•修改账户信息:用户可以随时修改自己账户的个人信息,如地址、电话号码等。
•锁定账户:如果账户存在异常,银行工作人员可以将账户进行锁定,防止非法操作。
•解锁账户:当账户异常已解决,银行工作人员可以解锁被锁定的账户,恢复正常使用。
2. 存款与取款•存款操作:用户可以通过银行管理系统进行存款操作,在指定账户中增加相应金额。
•取款操作:用户可以通过银行管理系统进行取款操作,从指定账户中减少相应金额,需输入正确的账户密码进行身份验证。
3. 转账业务•转账操作:用户可以通过银行管理系统进行转账操作,将指定账户的金额转到其他账户中,需输入正确的账户密码进行身份验证。
•查询转账记录:用户可以通过银行管理系统查询自己的转账操作记录,包括金额、转出账户、转入账户等详细信息。
4. 查询余额•查询账户余额:用户可以通过银行管理系统查询自己账户的余额情况,包括可用余额和冻结余额。
•查询账户明细:用户可以通过银行管理系统查询自己账户的交易明细,包括存款、取款、转账等操作的详细信息。
系统架构Java银行管理系统采用面向对象的设计思想,包括三层架构:表示层、业务逻辑层和数据访问层。
•表示层:负责用户与系统之间的交互界面,包括登录界面、业务操作界面等,通过窗口、按钮等控件提供用户输入和操作功能。
•业务逻辑层:负责处理用户的请求,实现具体的业务逻辑,包括账户管理、存款、取款、转账等功能。
负责校验用户输入的有效性,以及调用数据访问层的相关接口进行数据读写操作。
•数据访问层:负责和数据库进行交互,包括读取账户信息、更新账户余额等操作,使用数据库管理系统存储和管理各类数据。
案例1--银行储蓄账户管理系统用例
6/8
取款用例描述 用例名称:取款 参与的执行者:银行职员(客户代理) 前置条件:一合法的银行职员(客户代理)已登录到该系统 事件流: 基本路径: 1.当选择取款功能时用例开始 2.当输入客户信息(姓名、账号等)后 a)如果客户信息与账户不一致,显示错误信息,可以 重新输入或结束用例 b)如果该账户被冻结(如因挂失而冻结),显示冻结 信息并结束用例 3.输入并校验密码
28识别执行者客户到银行办理储蓄业务的人负责输入密码银行职员客户代理银行工作人员代表客户进行储蓄业务的操作银行职员管理人员银行工作人员根据客户的储蓄业务更新账户管理员银行计算机的管理人员负责账户的管理和业务报表的生成38识别用例从系统的需求陈述可知银行职员客户代理需要系统提供开户存款取款转账注销账户等功能这些功能都包含了校验密码的功能
4/260
开户 存款 取款 银行职员 用户代理) (用户代理) 注销 转账 银行内转账 银行职员 管理人员) (管理人员) 账户管 理 报表生 成 系统管理员
《包含》 包含》 《包含》 包含》 《包含》 包含》
客户 校验密码
银行间转账 其它银行 账户管理系统
银行储蓄账户管理系统
5/8
开户用例描述 用例名称:开户 参与的执行者:银行职员(客户代理),客户 前置条件:一合法的银行职员(客户代理)已登录到该系统 事件流: 1.当选择开户功能时用例开始 2.输入客户信息(姓名、地址、身份证号等) 3.从账户管理系统获取新的账号 4.请客户输入密码 5.请客户再次输入密码 6.如果两次密码不一致则回到第4步,否则继续 7.在账户库中添加新账户 8.打印存折,用例结束 后置条件:在账户库中增加了一个新账户,得到一张新存折
1/8
案 例
本案例实现一个简化了的银行储蓄账户管理系 统,该系统是在银行的柜台上对客户办理活期储蓄 业务。系统的需求陈述如下: 一个客户可以在多个银行中开设账户,一个客 户也可在同一银行中开设多个不同的账户。客户可 以通过银行职员进行开户、存款、取款、转账、注 销账户等活动。其中转账指客户将自己的某个账户 上的钱款转入同一银行的不同账户(称为银行内转 账)或转入不同银行的账户(称为银行间转账)。 系统管理员负责系统的账户管理及业务报表的生成。
银行管理系统
银行管理系统银行管理系统是一种集成了多业务功能的软件系统,用于支持银行业务的运营和管理。
该系统旨在提高银行的效率和服务质量,同时满足客户的需求和要求。
本文将探讨银行管理系统的功能和优势,以及如何提高其运营效果。
一、系统功能银行管理系统具备以下主要功能:1. 客户管理:系统可以记录和管理客户的基本信息,包括个人资料、账户信息、交易历史等。
通过该功能,银行可以更好地了解客户需求,为他们提供个性化的服务。
2. 账户管理:系统可以支持多种账户类型的管理,包括储蓄账户、支票账户、债券账户等。
通过账户管理功能,银行可以对账户余额、利率、透支额度等进行实时监控和调整。
3. 交易处理:系统提供了各种交易处理功能,包括存款、取款、转账、贷款申请等。
这些功能可以通过柜台、自助终端、手机银行等渠道进行操作,为客户提供便捷的服务体验。
4. 风险管理:系统可以对客户的信用评级、贷款风险等进行评估和管理,以降低银行的不良资产风险。
通过风险管理功能,银行可以更好地把握贷款风险,保障资金的安全性和稳定性。
5. 报表分析:系统可以生成各种报表和统计数据,包括客户活跃度、业务增长率、资金流动情况等。
这些报表和数据可以帮助银行进行业务分析和决策,优化运营效果。
二、系统优势银行管理系统的实施可以带来以下优势:1. 提高效率:系统的自动化处理能力可以大大提高银行的工作效率,减少人工操作错误。
员工可以更专注于重要的业务活动,提升工作质量和效果。
2. 优化服务:系统可以支持多种服务渠道,包括柜台、手机银行、网上银行等。
客户可以随时随地通过这些渠道进行操作,享受更快捷、便利的银行服务。
3. 加强风险控制:系统的风险管理功能可以帮助银行更好地评估客户的信用状况和借款能力,降低不良资产风险。
这有助于银行保持良好的资金流动性和稳定性。
4. 提升数据安全性:系统通过设定权限和加密措施,确保客户和银行数据的安全性和保密性。
这对于维护客户信任和银行声誉至关重要。
银行计算机储蓄系统的工作过程大致如下
银行计算机储蓄系统的工作过程大致如下银行计算机储蓄系统是指银行内部采用计算机技术进行资金管理和储蓄业务处理的系统。
该系统包含了客户账户管理、资金存取和查询、账户计息等多种功能。
以下是银行计算机储蓄系统的工作过程大致如下:1. 客户开户客户在银行开立储蓄账户时,银行工作人员需要输入客户的个人信息和账户类型等信息,并生成客户账户信息记录。
这些信息将被存储在银行计算机储蓄系统的数据库中,以备后续使用。
2. 资金存取客户需要进行存款或提款时,工作人员会查询客户的账户信息,并输入相关信息,包括存款金额、提款金额、账户余额等。
银行计算机储蓄系统会根据这些信息进行资金存取操作,并更新客户的账户余额。
3. 账户管理银行计算机储蓄系统可以对客户账户进行管理,包括账户信息修改、账户冻结、账户解冻等操作。
这些操作需要经过授权的工作人员才能完成。
4. 账户计息在客户账户余额中,如果存在可计息部分,则银行计算机储蓄系统可以根据客户储蓄账户的利率,按照一定周期对客户账户进行计息。
计息过程将自动完成。
5. 资金转账客户之间需要进行资金转账时,银行计算机储蓄系统可以进行转账操作。
工作人员需要输入转账信息,并经过授权后才能完成该操作。
银行计算机储蓄系统会根据转账信息,在账户余额中扣除相应金额,并将转账金额转至目标账户。
6. 数据备份和恢复银行计算机储蓄系统需要定期进行数据备份,以防止系统出现异常或误操作导致数据丢失。
备份数据需要存储在安全的地方,并在需要时进行恢复操作,以确保系统数据的完整性和稳定性。
以上是银行计算机储蓄系统的工作流程大致如此,不同银行的具体实现会有所不同,但总体上均是围绕客户账户管理和资金操作展开的。
其中,系统的安全可靠性和数据处理能力是银行计算机储蓄系统的重要指标,需要得到严格保护和管理。
银行储蓄管理系统_免费下载
银行储蓄管理系统一、用户对系统的要求系统中要求每个人银行管理者都有一个系统帐号,并每个帐号都有密码,系统的一切操作(如:增加存储用户,提高利率等)都由管理者执行,而不是由存诸用户执行,也主是说存储用户并不直接与系统交互,而是通过管理员与系统交互。
该系统主要有两部份业务功能,存款与取款。
储户填写的存款单或取款单由业务员输入系统,如果是存款则系统记录存款人姓名,住址(或电话号码),身份证号码,存款类型,存款日期,到期日期,利率及密码(可选)等信息,并打印存单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算得利息并打印出利息清单给储户。
(一)系统综合需求本系统是银行用户的存取款系统。
主要功能是管理各个用户存取款的相关数据。
储户填写的存款单或取款单输入系统,如果是存款,则系统记录存款人姓名,住址,身份证号码,存款类型,存款金额,存款日期等信息,并打印存单给储户;如果是取款,则需要输入帐号、取款金额等信息,核对正确后系统打印出清单给储户。
(二)系统的功能性需求系统为管理者提供主功能界面系统在启动时要求管理者输入登录帐号与密码系统要通过管理员执行一系操作(如:添加用户,修改,查询,删除等)管理员代用户实现存款,取款,查询等操作储户的一切信息,存储在数据库表中(三)系统需求分析规格说明书实现储户开户登记办理定期存款帐办理定期存款手续办理活期取款帐办理活期取款手续实现利息计算输出明细表数据备份和数据恢复功能查看帐户信息(四)银行系统基础银行有多个支行。
各个支行位于某个城市,每个支行有唯一的名字。
银行要监控每个支行的资产。
银行的客户通过其身份证号来标识。
银行存储每个客户的姓名及其居住的街道和城市。
客户可以有帐户,并且可以贷款。
客户可能和某个银行员工发生联系,该员工是此客户的贷款负责人或银行帐户负责人。
帐户可以由2个或2个以上客户所共有,一个客户也可有两个或两个以上的帐户。
银行存取款管理系统课程设计报告JAVA
银行存取款管理系统课程设计报告JAVA一、项目背景介绍在当今社会,银行作为金融服务的重要机构,对于存取款管理系统的需求日益增加。
为了满足这一需求,我们设计了一款基于Java语言的银行存取款管理系统,旨在帮助银行更高效地管理客户的资金。
二、项目需求分析1. 用户管理•实现用户的注册、登录功能,保障账户安全。
•对用户的身份进行验证,确保账户信息的准确性。
2. 存款管理•用户可以对账户进行存款操作,包括现金存款和转账存款。
•及时更新账户余额,保证用户能够随时查看账户信息。
3. 取款管理•实现用户对账户的取款操作,包括现金取款和转账取款。
•在用户取款时进行验证,确保账户余额充足。
4. 查询管理•提供用户对账户余额、交易记录等信息的查询功能,方便用户了解自己的财务情况。
三、系统设计1. 技术选型•Java语言:稳定、跨平台、易于学习。
•MySQL数据库:存储用户账户信息、交易记录等数据。
•Swing GUI库:用于实现系统的图形化界面。
2. 模块设计•用户管理模块:负责用户的注册、登录,以及身份验证。
•存款管理模块:处理用户的存款操作,更新账户余额。
•取款管理模块:处理用户的取款操作,验证账户余额。
•查询管理模块:提供用户账户信息的查询功能。
四、系统实现1. 用户管理模块实现// 用户注册功能public void register(String username, String password) {// 注册逻辑}// 用户登录功能public boolean login(String username, String password) {// 登录逻辑}2. 存款管理模块实现// 存款功能public void deposit(String account, double amount) {// 存款逻辑}// 转账功能public void transfer(String fromAccount, String toAccount, double amoun t) {// 转账逻辑}3. 取款管理模块实现// 取款功能public void withdraw(String account, double amount) {// 取款逻辑}// 转账功能public void transfer(String fromAccount, String toAccount, double amoun t) {// 转账逻辑}4. 查询管理模块实现// 查询余额功能public double checkBalance(String account) {// 查询余额逻辑}// 查询交易记录功能public List<Transaction> getTransactionHistory(String account) {// 查询交易记录逻辑}五、系统测试1. 单元测试•分别测试用户管理、存款管理、取款管理、查询管理模块的各项功能是否正常运行。
银行储蓄管理系统的设计与实现
银行储蓄管理系统的设计与实现The Design And Implementation Of Bank Savings ManagementSystem摘要目前社会上各种存储管理系统正在飞速的发展,越来越多的银行企事业单位引入了储蓄管理系统软件来管理自己的日常存储信息数据,取得了非常好的效果,银行储蓄管理系统也在原有的基础上进一步将功能不断的加强和完善,为了使银行的存储系统更加的科学化,实用化,规范化,因此我开发了这次的银行存储管理系统,以方便人们的生活。
作为计算机应用领域的一部分,使用计算机对银行的储蓄系统进行管理,具有非常大的优势,因为现如今人们的生活变得越来越好,这促使了我国金融分行业的快速发展,所以对于以前手工管理的方式在银行储蓄管理这方面就需要非常大的事务量,这显然无法达到我们高质量高效率的服务水平,所以运用科学的管理方式将对我们以后的经济发展带来新的发展热潮。
银行储蓄管理系统是现代经济生活中的重要组成部分,该系统主要通过前台应用程序的开发及后台数据库的建立与维护两个方面来进行系统设计。
采用功能强大的VS2008作为开发工具、SQL2005作为数据库开发出来的企业工资管理系统,在整个系统数据库的建立和维护方面保持了数据的一致性、完整性与安全性。
本文着重介绍了该系统的功能与具体实现过程,其功能主要包括:用户开户、存款、取款、销户、灵活打印账单、用户修改密码等功能。
该系统适用的对象是银行营业员,营业员相当于管理员,当储户需要完成一定操作时,可以通过营业员操作该系统来完成一定的功能。
本论文主要论述的是银行储蓄管理系统的设计与实现。
本设计以Microsoft Visual Studio 2008为开发环境,采用当前比较流行的C#[1]编程语言进行编码,数据库采用的是Microsoft SQL Server 2005。
采用的开发模式为当下最为流行的C/S架构模式。
本文的层次结构分为五大章节,第一章主要讲述的是此次开发的银行管理系统的课题背景、研究目的及意义、国内外研究现状、以及开发环境的介绍;第二章主要介绍此次开发所要准备的各种相关材料和需求分析、可行性分析、所要实现的功能分析、以及相关的业务流程图和实体E-R图;第三章主要概述该系统的主题设计,包括主要的功能设计分析以及用到的数据库的创建;第四章主要简述系统的主要功能设计,包括前台登录页面的设计、添加用户设计、开户设计、销户设计、挂失设计和取消挂失等设计;第五章主要讲解系统软件的测试,主要介绍软件测试的理论知识和所要用到的相关技术、各模块的软件测试,总结系统的不足。
银行管理系统数据库设计
银行管理系统数据库设计一、引言银行作为金融领域中重要的机构之一,其管理系统的设计对于保障金融交易的安全性和高效性具有至关重要的作用。
本文将详细介绍银行管理系统数据库的设计,包括数据库结构、数据表设计和关键功能模块的数据存储方式等方面。
二、数据库结构设计1. 数据库模型选择在银行管理系统中,常用的数据库模型包括关系型数据库模型和面向对象数据库模型。
考虑到银行业务的复杂性和数据之间的关联性,我们选择关系型数据库模型作为数据库设计的基础。
2. 数据表设计(1) 用户信息表•用户ID(主键)•用户姓名•身份证号•联系方式•地址•注册时间(2) 账户信息表•账户号(主键)•用户ID(外键)•账户类型•账户余额•开户时间•利率(3) 交易记录表•交易ID(主键)•账户号(外键)•交易类型•交易金额•交易时间3. 索引设计为提高数据库的查询效率,可以在用户ID、账户号等频繁被查询的字段上创建索引,加快数据检索速度。
三、关键功能模块数据库存储方式1. 用户注册与登录模块用户注册信息将存储在用户信息表中,登录验证时将对用户名和密码进行匹配验证。
2. 账户管理模块账户信息表存储了用户的账户信息,包括账户类型、余额等,管理员可通过该表进行账户管理操作。
3. 交易记录模块交易记录表用于记录每笔交易的信息,包括交易类型、金额等,对于账户的交易历史进行存储和查询。
四、安全性考虑为保障银行管理系统的安全性,可以采取加密算法对用户信息进行加密存储,确保数据在传输和存储过程中的安全性。
五、总结本文针对银行管理系统数据库设计进行了详细的介绍,包括数据库结构设计、关键功能模块的数据库存储方式及安全性考虑等方面。
通过合理的数据库设计,可提高银行管理系统的运行效率和安全性,保障金融交易信息的完整性和可靠性。
银行核心系统的基本知识与使用方法
银行核心系统的基本知识与使用方法银行核心系统是指银行业务运行的中枢,它负责处理各类银行业务,包括储蓄账户管理、贷款管理、支付结算、风险控制等。
本文将介绍银行核心系统的基本知识以及使用方法。
一、银行核心系统的基本概念银行核心系统是指银行日常业务的处理平台,它涵盖了银行各个业务模块,并负责业务的开展、管理和监控。
它是银行的信息中枢,承载了银行业务的核心功能。
银行核心系统通常包括以下几个模块:账户管理模块、贷款管理模块、支付结算模块、风险控制模块等。
1. 账户管理模块账户管理模块是银行核心系统的基础模块,负责存款账户的开立、销户、资金的收付等。
它可以实现存款账户的实时查询、交易明细的查询等功能。
同时,账户管理模块还支持账户的冻结、止付等特殊操作。
2. 贷款管理模块贷款管理模块是用于管理银行贷款业务的模块,包括贷款申请、审批、发放以及贷款的还款管理等。
通过贷款管理模块,银行可以实现贷款申请的在线提交、自动审批以及贷款回收的自动化处理。
3. 支付结算模块支付结算模块是银行核心系统中非常重要的模块,它负责处理各类支付业务,包括转账、代付、批量支付等。
支付结算模块要保证支付的安全性和及时性,并支持不同支付方式的接入,如网银支付、手机支付等。
4. 风险控制模块风险控制模块是银行核心系统中的关键模块,它负责对各类风险进行监控和管理,包括信用风险、市场风险、操作风险等。
通过风险控制模块,银行可以及时发现风险并采取相应措施进行风险防控。
二、银行核心系统的使用方法银行核心系统是银行日常运营的重要工具,合理的使用方法可以提高银行的业务效率和服务质量。
1. 制定详细的操作规范银行应根据自身业务情况制定详细的操作规范,明确每个业务环节的操作流程和责任人,以确保操作的准确性和一致性。
操作规范应包括核心系统的使用流程、数据录入要求、权限管理等内容。
2. 建立完善的数据管理机制银行应建立完善的数据管理机制,包括数据的备份、恢复、安全性保障等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
燕山大学三级项目设计说明书题目:银行储蓄管理系统学院(系):信息学院年级专业:教育技术学15—1学号:学生姓名:付叶禹郑凯峰李文悦王宇晨李晓晗指导教师:梁顺攀教师职称:副教授燕山大学三级项目设计(论文)任务书院(系):信息学院教学单位:说明:此表一式四份,学生、指导教师、基层教学单位、系部各一份。
年月日燕山大三级项目设计评审意见表摘要论文阐述的是在SQL server 2008开发环境下对银行储蓄管理系统的设计。
希望通过该系统的应用,能促使银行储蓄管理工作的规范化、标准化和自动化,提高管理水平和管理效率,为管理工作提供更完善的信息服务和一个成功的信息管理系统。
数据库是一个非常重要的条件和关键技术,管理系统所涉及的数据库设计分为:数据库需求分析、概念设计、逻辑设计过程。
本论文叙述了数据库设计的全过程。
主要分为:1. 系统需求分析与功能设计阶段,包括功能需求、性能需求、数据需求、系统功能框图、系统总体数据流图及分模块数据流图、数据字典。
2. 总体设计阶段,包括系统总体功能模块图、功能模块描述、输入输出及统计查询等功能模块。
3. 概念设计阶段,包括系统各个模块的ER图及系统的总ER图。
4.逻辑结构设计阶段,包括系统各个模块的ER图所转化的关系模式。
关键词:数据库设计;管理系统; SQL server 2008;目录摘要...................................................... 1.1 项目背景由于中国的金融业在进入21世纪后的飞速发展,原有的工人记账已经不适合今天的生活了,同时以前的部分银行虽然使用了计算机储蓄系统,但是运算量小,功能单一等问题一直影响银行的工作效率。
1.2 编写目的为了优化银行储蓄系统的计算机管理,并且熟悉和熟练掌握数据库课程的上机操作,编写此系统。
1.3 软件定义本系统用来实现储户基本信息,储户交易记录,储户利息所得情况等存储和操作。
1.4 开发环境开发环境为SQL Server2008.2 系统需求分析2.1信息与功能需求系统中存有储户基本信息表、交易信息表、利息信息表。
储户通过查询、修改等操作实现对以上表的数据的检索与更新。
储户基本信息包括储户编号、姓名、性别、年龄、身份证号等,交易信息包括储户编号、交易编号、交易内容交易窗口等,返利信息包括储户编号、利率、存款时长、存款类型等。
2.2 业务处理需求储户需要完成的处理功能有:增加新储户,更改储户信息,增加交易信息,查询返利信息,更改交易信息,修改返利信息,按照储户信息或者交易信息进行查询和统计等。
系统的功能框图:2.3 数据流图2.3.1系统总体数据流图2.3.2系统功能子模块数据流图2.3.2.1储户信息管理模块储户信息储户信息新储户信息2.3.2.2交易记录管理模块2.3.2.4统计查询管理模块2.4 安全性与完整性要求因为银行储蓄管理系统关系到银行及其储户的重要信息,所以对于银行而言对安全保密性的要求非常严格,此系统是面向银行工作人员的,要求有工作人员账户和密码才可以登录,使用系统,因此对该系统使用的权限要求比较高。
任何软件都有缺陷,对于银行储蓄管理系统在银行或储蓄的需求发生变化时,增加一个新的功能模块,要求系统能够很好地对其进行扩充,更好的完整该系统。
2.5 数据字典2.5.1储户基本信息表名字:储户基本信息表别名:储户基本信息描述:银行储户的基本信息定义:储户基本信息表=账号+密码+姓名+性别+身份证号+联系方式+地址+开户存储金额说明位置:输出到显示器名字:账号别名:描述:各个储户的编号定义:账号=19{字符}19位置:储户基本信息表名字:密码别名:描述:各个储户的密码定义:密码=18{字符}18位置:储户基本信息表名字:姓名别名:描述:各个储户的姓名定义:姓名=6{字符}6位置:储户基本信息表名字:性别别名描述:各个储户的性别定义:性别=2{字符}2位置:储户基本信息表名字:身份证号别名:描述:各个储户的身份证号定义:身份证号=18{字符}18位置:储户基本信息表名字:联系方式别名:描述:各个储户的联系方式定义:联系方式=11{字符}11位置:储户基本信息表名字:地址别名:描述:各个储户的地址定义:地址=20{字符}20位置:储户基本信息表名字:存储金额别名:描述:各个储户存储金额定义:存储金额=8{字符}8位置:储户基本信息表2.5.2交易记录表名字:交易记录表别名:描述:储户与银行进行交易的信息定义:交易基本信息=活期存款数目+定期存款数目+活期取款数目+定期取款数目+定期提前取款数目+转账钱数位置:输出到显示器名字:活期存款数目别名:描述:储户存进银行的可随时取出的钱数定义:存款数目=10{字符}10位置:交易记录表名字:定期存款数目别名:描述:储户存进银行的定期取出的钱数定义:存款数目=9{字符}9位置:交易记录表名字:活期取款数目别名:描述:储户可随时从银行取出的钱定义:8{字符}8位置:交易记录表名字:定期取款数目别名:到期取款数目描述:储户到了规定的时间取出的钱数定义:7{字符}7位置:交易记录表名字:定期提前取款数目别名:描述:储户未到期限提前取出的钱数定义:6{字符}6位置:交易记录表名字:转账钱数别名:描述:从一个账户转到其他账户的资金定义:5{字符}5位置:交易记录表2.5.3利息信息表名字:储户利息信息表别名:储户利息信息描述:储户存取款后的利息信息定义:储户利息信息=储户编号+储户存款类型+储户存款时长位置:输出到显示器名字:储户编号别名:存款号描述:各个储户的编号定义:储户编号位置:储户基本信息表名字:储户存款类型别名:储户存款类型描述:储户存款是活期还是死期定义:存款种类位置:储户利息信息表名字:储户存款时长别名:储户存款时长描述:储户活期存款的时间长短定义:存款时间长短位置:储户利息信息表2.5.4用户密码表名字:用户密码表别名:用户密码信息描述:管理员的登录用户名与登录密码定义:用户密码信息=用户名+密码位置:用户密码表名字:用户名别名:描述:管理员登录系统时的用户名定义:用户名=10{字符}10位置:用户密码表名字:密码别名:描述:管理员登录系统的密码定义:密码=10{字符}10位置:用户密码表3 系统设计3.1 系统总体设计3.1.1 系统功能模块图3.1.2 功能模块描述模块名:储户基本信息管理子模块功能描述:根据储户基本信息表的存储,完成对储户基本信息的增加、修改、删除、查询等操作,并且可以增加新储户。
模块名:交易信息管理子模块功能描述:储户在银行进行的存款,取款,通过对账户的修改来实现信息可视化。
模块名:储户利息信息管理子模块功能描述:根据储户基本信息以及储户存款类型和存款时长等根据当时利率计算出当时应得的利息。
模块名:统计查询管理子模块功能描述:对银行交易记录进行统计查询,输入某一日期,即可查询当天所有的收入和支出详情,并且对储户进行统计查询,输入某一储户信息,即可查询该储户在银行所有的交易记录。
3.1.3 子功能模块图储户基本信息管理模块增加、修改、删除、查询增加输入:身份证号,姓名,性别,联系方式,地址修改输入:账号根据账号查询输出信息然后进行修改删除输入:账号根据账号查询输出信息查询输入:账号,密码根据账号密码查询输出信息查询利息信息统计查询管理模块按储户信息:输入:储户姓名,身份证号码,年龄,性别(日期)按银行日期:输入:日期3.2 数据库设计3.2.1 数据库概念结构设计3.2.1.1 分E-R图储户基本信息管理模块交易记录模块利息信息模板统计查询模块3.2.1.2 总E-R图3.2.2 数据库逻辑结构设计关系模式如下储户基本信息管理子模块:对每个实体和联系定义的属性如下:储户基本信息(账号,姓名,地址,性别,联系方式,年龄,密码,身份证号,存储金额)管理员(管理员编号,管理员密码)修改(账号,管理员编号)增加(账号,管理员编号)删除(账号,管理员编号)查询(账号,密码,管理员编号)交易基本信息管理子模块:储户(姓名,账户名,账户余额,套餐,账户类型)银行交易记录(日期,收入,支出)存款(帐号,姓名,存款期限)取款(帐号,姓名,利息,取款期限)转账(帐号,姓名,转账对象,转账类型)储户利息信息管理子模块:储户利息信息(储户编号,储户姓名,存款类型,存款时长)管理员(管理员编号,管理员密码)修改(储户编号,管理员编号)查询(储户编号,管理员编号)统计查询管理子模块:储户基本信息(账号,姓名,地址,性别,联系方式,年龄,密码,身份证号,存储金额)银行交易(日期,员工工资,收入,支出)管理员(管理员编号,管理员密码)统计查询(账号,银行交易日期,管理员编号)总结在我们团队集体的努力下,我们完成了我们的第一个三级项目课程设计。
在这个过程中我们收获了很多,对数据库的需求分析,数据库的设计,以及对数据流图和E-R图的制作有了更深刻的了解,在老师的指导下,参考了一些文献,对我们的完成也帮助颇多。
在这次过程中,我们不仅学到了一些书本上的东西,更是深刻意识到团队合作的重要性,一个人单薄的力量是很难完成这些任务的。
但是这次过程中,我们也遇到了很多困难和不懂的地方,而且我们的课程设计,我们自知不是特别好,我们还是设想有些浅显,对银行的整体运行可能还是不够了解充分,完成的功能也不够多,但我们还是会继续努力。
发挥机制作用,集聚全行之力参考文献资料1.数据库系统概论(第五版).王珊,萨师煊.高等教育出版社.20162.李春葆等.数据库原理与应用—基于SQL Server2005.清华大学出版社.20093.白尚旺等.PowerDesigner软件工程技术.电子工业出版社.20044.张海藩软件工程导论(第五版) 清华大学出版社.2008页脚内容23。