mysql触发器借书还书_数据库:建一个触发器,当 借书和还书时自动更新图书馆图书在册数量!求代码?...
create table K--图书库存表(K_id varchar(6) primary key,K_Name varchar(30),K_Ku int)goinsert into K select '9001','苹果核战记',10gocreate table H --还书表(K_Id varchar(6) primary key,K_Name varchar(30),X_ID char(8)
create table K--图书库存表
(K_id varchar(6) primary key,
K_Name varchar(30),
K_Ku int)
go
insert into K select '9001','苹果核战记',10
go
create table H --还书表
(K_Id varchar(6) primary key,
K_Name varchar(30),
X_ID char(8),
JC datetime,--借出时间
YH datetime,
GH datetime --归还时间
)
go
create table J --借书表
(K_ID varchar(6) primary key,
X_ID char(8),
JC datetime,--借出时间
YH datetime
)
go
--借书表建立触发器(当发生借书时,insert into一条记录触发触发器)
create trigger Tri_J
on J
for Insert --插入动作触发
as
declare @ID varchar(6)
select @ID=K_ID from inserted
update K set K_ku=K_ku-1 where K_ID=@ID --借书库存减一
go
--还书表建立触发器(当还书是,Insert into一条记录触发触发器)
create trigger Tri_H
on H
for insert
as
declare @ID varchar(6)
select @ID=K_ID from inserted
update K set K_ku=K_ku+1 where K_ID=@ID --借书库存加一
go
--测试
--借书
insert into J select '9001','X001',getdate(),dateadd(day,10,getdate())
select * from K--库存减一 9
--还书
insert into H select '9001','苹果核战记','X001',getdate(),dateadd(day,10,getdate()),dateadd(day,8,getdate())
select * from K--库存加以 10
更多推荐
所有评论(0)