简单的图
馆借书还书系统代码
create table books
(
bookno varchar2(10),
bookname varchar2(50), price number(5,2),
publish varchar2(30),
wname varchar2(30),
condition varchar2(5), primary key(bookno),
check(condition in('借出','在架'))
);
create table users
(
userno number,
username varchar2(10), age number,
sex varchar2(2),
idnum varchar2(18),
rout number default 0, total number default 10, primary key(userno),
check(sex in('男','女'))
);
create table borrow
(
userno number,
bookno varchar2(10),
bdata date default sysdate, primary key(userno,bookno), foreign key(userno) references users(userno),
foreign key(bookno) references books(bookno)
);
create table return
(
userno number,
bookno varchar2(10),
rdata date default sysdate, primary key(userno,bookno), foreign key(userno) references users(userno),
foreign key(bookno) references books(bookno)
);
insert into books values('J000000001','计算机网络',26.80,'大连理工大学出版社','谢希仁','在架');
insert into books values('J000000002','软件工程',28.00,'高等教育出版社','史济民,顾春华,郑红','在架');
insert into books values('J000000003','网络数据库',38.00,'清华大学出版社','闪四清,杨强','在架');
insert into books values('J000000004','数据库系统概论',33.80,'高等教育出版社','王珊,萨师煊','在架');
insert into books values('J000000005','EDA技术及应用',27.00,'西安电子科技大学出版社','谭会生,张昌凡','在架');
insert into books values('J000000006','面向对象程序
-JAVA',32.00,'西安电子科技大学出版社','张白一,崔尚林','在架');
insert into books values('J000000007','单片机基础',24.00,'北京航空航天大学出版社
','李广弟,朱月秀,冷祖祁','在架');
insert into books values('J000000008','数据结构',30.00,'清华大学出版社','严蔚敏,吴伟民','在架');
create sequence users_seq;
create trigger biu_users
before insert
on users
for each row
begin
select users_seq.nextval
into:new.userno from dual;
end;
/
insert into users(username,age,sex,idnum) values('甲一',24,'男','3302012198705031274');
insert into users(username,age,sex,idnum) values('乙二',43,'女','3302012196802231532');
insert into users(username,age,sex,idnum) values('丙三',21,'女','3302012199005031464');
insert into users(username,age,sex,idnum) values('丁四',17,'男','3302012199405031743');
insert into users(username,age,sex,idnum) values('戊五',45,'男','3302012196605031733');
insert into users(username,age,sex,idnum) values('巳六',23,'女','3302012198811151263');
insert into users(username,age,sex,idnum) values('庚七',36,'男','3302012197405031362');
insert into users(username,age,sex,idnum) values('辛八',60,'男
','3302012195005031642');
create trigger biu_borrow after insert or update on borrow
for each row
begin
update users set rout=rout+1 where :new.userno=users.userno;
end;
/
create trigger biu_return after insert or update on return
for each row
begin
update users set rout=rout-1 where :new.userno=users.userno;
end;
/
create trigger borrow_return after insert or update on return
for each row
begin
delete from borrow where :new.userno=borrow.userno and :new.bookno=borrow.bookno;
end;
/
create trigger borrow_books after insert or update on borrow
for each row
begin
update books set condition='借出' where :new.bookno=books.bookno;
end;
/
create trigger return_books after insert or update on return
for each row
begin
update books set condition='在架' where :new.bookno=books.bookno;
end;
/