ATM取款机(Oracle)

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

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

笔杆子文秘
机构认证
内容提供者

为您提供优质文档,供您参考!

确认删除?