资源描述:
《atm取款机(oracle)》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、ATM取款机(Oracle实现)一.功能描述:1.创建用户表和账户表,完成建表相关操作,录入测试数据(40分)2.建立程序包,完成如下功能:开户(10分),登陆(10分),修改密码(10分),转帐(20分),查询余额(10分)(总计60分)二.参考代码:建表:--账户表createtableUser_Account(Aidvarchar2(16)notnullprimarykey,--卡号Usernamevarchar2(20)notnull,--户主Opendatedatedefaultsysdate,--开户时间Balancen
2、umberdefault0,--余额passwordvarchar2(8)DEFAULT'888888'notnull,--密码stautsChar(2)default0notNULL--卡状态:0:正常,1:冻结2:注销);--交易表createtabletransinfo(TidINTEGERnotnullprimarykey,--交易流水号Aidvarchar2(16)notnull,--卡号transtypeVARCHAR2(10)notnull,--交易类型:存入,支取tBalanceNumber(8,2)notnull,
3、--交易金额Transdatedatedefaultsysdatenotnull--交易时间);程序包定义:包头pack_User_Atm存储过程proc_CreateUserAccount(vUsernamevarchar2);--开户,输入用户姓名,产生卡号为19位,前8位为95580000,录入到账户表并输出生成的卡号。存储过程proc_insert_transinfo(vaidvarchar2,vpasswordvarchar2);--登陆,输入账号和密码,登录成功打印ok,失败打印error存储过程proc_Change_
4、password(vaidvarchar2,oldPassvarchar2,newPassvarchar2);--修改密码,输入账号、原始密码、新密码,判断修改流程,成功打印ok,失败打印error存储过程proc_give_money(vaidvarchar2,giveIDvarchar2,moneynumber);--转帐,输入转出账号,转入账号,以及金额,执行相关流程,成功打印ok,失败打印error函数fun_check_balance(vaidvarchar2,vpasswordvarchar2);----查询余额,输入账
5、号和密码,返回余额参考答案:(把下面的答案直接复制到SQL执行控制台可以直接执行)--账户表createtableUser_Account(Aidvarchar2(19)notnullprimarykey,--卡号Usernamevarchar2(20)notnull,--户主Opendatedatedefaultsysdate,--开户时间Balancenumberdefault0,--余额userpasswordvarchar2(8)DEFAULT'888888'notnull,--密码stautsChar(2)default0
6、notNULL--卡状态:0:正常,1:冻结2:注销)--交易表createtabletransinfo(TidINTEGERnotnullprimarykey,--交易流水号Aidvarchar2(19)notnull,--卡号transtypeVARCHAR2(10)notnull,--交易类型:存入,支取tBalanceNumber(8,2)notnull,--交易金额Transdatedatedefaultsysdatenotnull--交易时间)--创建交易流水号序列createsequenceseq_transinfos
7、tartwith000000001incrementby1nomaxvalue;--查询数据select*fromUser_Accountwhereaid='9558000076903450474'select*fromtransinfodeletefromtransinfodeletefromUser_Account--录入测试数据insertintoUser_Accountvalues(substr(to_char((dbms_random.value(100000000000,0)+95580000*100000000000)
8、),1,19),'张三',default,0,'111111','0');insertintotransinfovalues(seq_transinfo.nextval,'9558000076903450474','存入',20,de