寫一個觸發器,現有表a和表b,欄位和屬性是一樣的,我想在修改a之前先把a中的資料對應的寫入b中,做為歷史記錄,請問如何寫這個觸發器.

xupiao 2003-10-21 11:50:35
rt
...全文
30 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
yujohny 2003-10-21
  • 打赏
  • 举报
回复
create trigger tri_test_a on 表a
for update
as
insert 表b select * from deleted
sdhdy 2003-10-21
  • 打赏
  • 举报
回复
对表进行insert:在inserted表中有刚增加的记录。
对表进行update:在inserted表中有刚更新的记录,在delete表中有更新前的记录。
对表进行delete:在delete表中有刚删除的记录。
txlicenhe 2003-10-21
  • 打赏
  • 举报
回复
不过建议在b表多加几个字段,修改时间,机器名等
alter table b add 时间 datetime
alter table b add 机器名 varchar(20)
go
Create trigger 名 on a
for update
as
insert b select *,getdate(),host_name() from deleted
sdhdy 2003-10-21
  • 打赏
  • 举报
回复
竟然和马可同时到达,呵呵!
sdhdy 2003-10-21
  • 打赏
  • 举报
回复
create trigger tri_update_a on a
for update
as
insert b select * from deleted
txlicenhe 2003-10-21
  • 打赏
  • 举报
回复
Create trigger 名 on a
for update
as
insert b select * from deleted

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧