求帮忙做一个银行数据库 Oracle

求帮忙做一个银行数据库 Oracle,第1张

功能一:

create database bank

功能二:

create table userinfo(

customerID number(10) not null,

customerName varchar2(10) not null,

PID char(18) not null,

telephone char(11) not null,

address varchar2(255) not null

)

create table cardinfo(

cardID varchar2(19) not null,

cardCustomerID number(10) not null,

curtype char(3) not null,

savingtype char(4) not null,

openDate date not null,

openmoney number(10,2) not null,

blance number(10,2) not null,

password char(6) not null,

isreportLoss char(2) not null

)

create table transinfo(

id number(15) not null,

transcustomerID number(10) not null,

transcardID varchar2(19) not null,

transdate date not null,

transmoney number(10,2) not null,

transtype char(4) not null,

remark varchar2(255) not null

)

功能三:

alter table userinfo add constraint pk_userinfo primary key (customerID)

alter table userinfo add constraint ck_PID check(length(PID)=18)

alter table cardinfo add constraint pk_cardinfo primary key (cardID)

alter table cardinfo add constraint fk_CustomerID_card foreign key cardCustomerID references userinfo(customerID)

alter table transinfo add constraint pk_transinfo primary key (id)

alter table transinfo add constraint fk_CustomerID_trans foreign key cardCustomerID references userinfo(customerID)

alter table transinfo add constraint fk_transcardID_trans foreign key cardCustomerID references cardinfo(cardID)

功能四:

insert into userinfo values(1,'张三','123456789012345671','13012345671','地址1')

insert into userinfo values(2,'李四','123456789012345672','13012345672','地址2')

insert into userinfo values(3,'王五','123456789012345673','13012345673','地址3')

insert into cardinfo values('1234567890123456789',1,'RMB','活期',sysdate,5.04,5.04,'123456','否')

insert into cardinfo values('1234567890123456788',2,'JPY','活期',sysdate,3.22,3.22,'123457','否')

insert into cardinfo values('1234567890123456787',3,'USA','定期',sysdate,6.78,6.78,'123458','否')

insert into transinfo values(1,1,'1234567890123456789',sysdate,0.23,'存入','存钱')

insert into transinfo values(2,2,'1234567890123456788',sysdate,1.27,'支取','取钱')

insert into transinfo values(3,3,'1234567890123456787',sysdate,2.34,'存入','存钱')

功能五:

select transcardID,transmoney from transinfo where to_char(transdate,'mm')=to_char(sysdate,'mm') and transmoney=max(transmoney)

功能六:

create procedure p_c

is

cursor cr is

select b.cardID,a.customerName,a.telephone from userinfo a,cardinfo b where a.customerID=b.cardCustomerID and to_char(sysdate,'dd') in ('28','29','30','31') and b.blance<200

cur_info cr

begin

for cur_info in cr loop

dbms_output.put_line('卡号:' || cur_info.cardID || '&&' || '姓名:' || cur_info.customerName || '电话:' || cur_info.telephone)

end loop

end p_c

和软件开发类似,两者都要互相用到,彼此交叉。比如银行的自动取款机系统,就是数据库开发的典型例子。你会觉得这个应该是软件开发的写代码啊,但是事实上写代码只是取款机系统实现的一步而已。数据库开发分六步:需求分析、概念结构设计、逻辑结构设计、数据库的物理设计、数据库的实施、数据库的运行和维护。写代码只是数据库实施中的一部分,这样讲应该能明白吧。还有像超市的收银系统,学校的教务系统都是数据库的例子,光会写代码是编不出来的。我目前已经考了数据库系统工程师,这学期准备考个软件设计师。两者的区别是数据库的语言主要是SQL,软件设计师则是写代码,C、C++ 、Java等

连接数据库的密码和用户的密码是不同的,前者是数据库的密码,后者只是ATM取款系统的个人密码。

连接数据库的密码,用户是不可能知道的,这个密码是保存在ATM机系统里面的。

用户的密码,与数据库的连接无关,只是用来验证你的身份的。

用户去取钱,ATM机先通过ATM机里面的密码连接到银行数据库系统(当然有可能是一直连接点的,具体的我就不知道),然后你输入密码,密码正确就通过了ATM的用户验证,可以取钱。

类比一个,例如QQ

我们登录QQ之前,QQ会先和QQ的服务器进行连接,这个密码是写在QQ程序里面的。

我们所输入的密码实际只是你的QQ的密码,这个密码只与你的QQ号是关联的,与QQ这个程序配套的。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6927457.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-30
下一篇 2023-03-30

发表评论

登录后才能评论

评论列表(0条)

保存