SQL Server中如何用触发器,使A表中插入特定条件数据时,将数据插入相同结构的B表,并删除A中数据?

比如A表,当插入数据中,有一个ErrorID=5的数据。那么就将这一行数据插入到B表里。B表里所有的字段和结构都和A表一样。同时,完成以上操作后,将A表中这一行数据删除掉... 比如A表,当插入数据中,有一个ErrorID=5的数据。
那么就将这一行数据插入到B表里。B表里所有的字段和结构都和A表一样。
同时,完成以上操作后,将A表中这一行数据删除掉。

请问怎么写触发器呀?
谢谢!!!
全部分都在这了TAT
原来账号掉了,1000多分都没了。。。
展开
 我来答
zxj_betty
2013-04-01 · TA获得超过2万个赞
知道大有可为答主
回答量:8118
采纳率:0%
帮助的人:3214万
展开全部
如果是 SQL SERVER 数据库的话, 还是比较省事的。

CREATE TRIGGER TRDelA
ON A
FOR DELETE
AS
BEGIN
INSERT INTO B
SELECT
*
FROM
deleted;
END
你好、希望能帮到你哈!
匿名用户
2013-04-01
展开全部
create trigger tri on a
for update
as
begin
insert b
select * from a where ErrorID=5;
delete from a where ErrorID=5;
end
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
skyfukk
2013-04-02 · TA获得超过1187个赞
知道小有建树答主
回答量:966
采纳率:100%
帮助的人:636万
展开全部
create trigger Mytr
on A
for insert
as
if exists(select 1 from inserted where ErrorID=5)
begin
insert into A select * from B where exists(select 1 from inserted where ErrorID=5)
end
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
szm341
2013-04-01 · TA获得超过6726个赞
知道大有可为答主
回答量:5005
采纳率:100%
帮助的人:5171万
展开全部
create trigger tr_ins_del_tbA
on tbA
instead of insert
as
begin
if exists(select 1 from inserted where errorid=5) begin
insert into tbB select * from inserted where errorid=5
end
insert into tbA select * from inserted where errorid<>5
end
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式