mysql两张表单项同步_如何让数据库两个表单数据同步
mysql两张表单项同步_如何让数据库两个表单数据同步
豌豆荚连接不上手机
为什么要使⽤触发器?⽐如,这么两个表:
Create Table Student( --学⽣表
StudentID int primary key, --学号
....
)
Create Table BorrowRecord( --学⽣借书记录表
BorrowRecord int identity(1,1), --流⽔号
StudentID int , --学号
怎么隐藏图标BorrowDate datetime, --借出时间指数函数的导数
ReturnDAte Datetime, --归还时间
.
..
)
⽤到的功能有:
1.如果我更改了学⽣的学号,我希望他的借书记录仍然与这个学⽣相关(也就是同时更改借书记录表的学号);
教师资格证怎么考
2.如果该学⽣已经毕业,我希望删除他的学号的同时,也删除它的借书记录。
等等。
这时候可以⽤到触发器。对于1,创建⼀个Update触发器:
Create Trigger truStudent
On Student --在Student表中创建触发器
for Update --为什么事件触发
As --事件触发后所要做的事情
if Update(StudentID)
begin
Update BorrowRecord
Set StudentID=i.StudentID
胡琴图片From BorrowRecord br , Deleted d ,Inserted i --Deleted和Inserted临时表
Where br.StudentID=d.StudentID
end
理解触发器⾥⾯的两个临时的表:Deleted , Inserted 。注意Deleted 与Inserted分别表⽰触发事件的表“旧的⼀条记录”和“新的⼀条记录”。
⼀个数据库系统中有两个虚拟表⽤于存储在表中记录改动的信息,分别是:
guoqingjie虚拟表Inserted 虚拟表Deleted
在表记录新增时 存放新增的记录 不存储记录
修改时 存放⽤来更新的新记录 存放更新前的记录
删除时 不存储记录 存放被删除的记录
⼀个Update 的过程可以看作为:⽣成新的记录到Inserted表,复制旧的记录到Deleted表,然后删除Student记录并写⼊新纪录。对于2,创建⼀个Delete触发器
Create trigger trdStudent
On Student
for Delete
As
Delete BorrowRecord
From BorrowRecord br , Delted d
Where br.StudentID=d.StudentID

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。