Oracle银行存取钱系统

Posted 薄荷*糖糖

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle银行存取钱系统相关的知识,希望对你有一定的参考价值。

            Oracle银行存取钱系统

/*
银行系统
要求:
  1、创建一个用户信息表(userinfo)、一个交易信息表(deal)
        2、用户信息表字段:用户编号、用户名称、密码、余额
    交易信息表字段:编号、交易金额、交易类型、用户编号
  3、建立两个表之间的关系
        4、所有编号采用序列添加,序列名称:userinfo_sq,deal_sq
  5、添加4个用户信息,内容自定义
  6、通过PLSQL编程实现控制台存钱和取钱操作,要求控制台提示操作方式,如: 1、取钱  2、存钱、3查询余额
  注意:存取钱操作可以多次执行操作。
*/
--创建用户信息表、交易信息表
create table userinfo(
  u_id number, --用户编号
  u_name varchar2(20), --用户名称
  u_pwd varchar2(20),--密码
  u_money number --余额
);
create table deal(
  d_id number, --编号
  d_money number, --交易金额
  d_type varchar2(20),
  u_id number
);
--添加关系
alter table USERINFO
  add constraint U_PK primary key (U_ID)
alter table DEAL
  add constraint U_D_FK foreign key (U_ID)
  references USERINFO (U_ID);  
   
--添加序列
create sequence USERINFO_SQ
minvalue 1
maxvalue 9999999999999999999999999999
start with 1
increment by 1
cache 20;

create sequence deal_SQ
minvalue 1
maxvalue 9999999999999999999999999999
start with 1
increment by 1
cache 20;

--添加用户信息
insert into userinfo(u_id,u_name,u_pwd,u_money) values(userinfo_sq.nextval,‘旺财‘,‘123‘,100);
insert into userinfo(u_id,u_name,u_pwd,u_money) values(userinfo_sq.nextval,‘旺旺‘,‘123‘,1);
insert into userinfo(u_id,u_name,u_pwd,u_money) values(userinfo_sq.nextval,‘阿旺‘,‘123‘,99);
insert into userinfo(u_id,u_name,u_pwd,u_money) values(userinfo_sq.nextval,‘小旺‘,‘123‘,100);

select *from userinfo;
--PLSQL编程

declare
  --定义一个变量存放用户操作
  input number;
  money number;
  usid number;
begin
  usid:=‘&当前用户ID‘;
  input:=‘&1取钱、2存钱、3查询余额‘;
  --判断操作类型
  if input=1 then
    money:=‘&取钱金额‘;
    update userinfo set u_money=u_money-money where u_id=usid;
    --将交易信息保存到交易信息表中
    insert into deal(d_id,d_money,d_type,u_id)values(deal_sq.nextval,money,‘支取‘,usid);
    end if;
  if input=2 then
    money:=‘&存钱金额‘;
    update userinfo set u_money=u_money+money where u_id=usid;
    insert into deal(d_id,d_money,d_type,u_id)values(deal_sq.nextval,money,‘存储‘,usid);
    end if;
  if input=3 then
    select u_money into money from userinfo where u_id=usid;
    dbms_output.put_line(‘当前用户余额为:‘||money);
    end if;
  end;

  

以上是关于Oracle银行存取钱系统的主要内容,如果未能解决你的问题,请参考以下文章

基于JavaSwing ATM取款机系统的设计和实现

PHP Mysql - 创建自己的银行系统

关于JAVA~~~~ 如何将图片等大对象存入ORACLE中~~求详解!(代码)

银行ATM存取款系统(C语言实现)

基于python网络编程实现支持购物转账存取钱定时计算利息的信用卡系统

Java基础知识综合练习_使用集合存储_高级银行系统的搭建(注册登录存取款本行转账跨行转账销户特殊操作参数多个客户对象存入到银行类的集合,多个银行对象存入总测试类集合)