SQL触发器,两表结构相同,表A新增一条记录后马上触发把该条记录插入到表B,只能一条一条触发最新的记录

表A中没有自增量ID,只有一个主键CC,该主键含英文+数字,请问该触发器怎样写... 表A中没有自增量ID,只有一个主键CC,该主键含英文+数字,请问该触发器怎样写 展开
 我来答
skyfukk
2011-05-09 · TA获得超过1187个赞
知道小有建树答主
回答量:966
采纳率:100%
帮助的人:633万
展开全部
create trigger Mytrg
on A
for insert
as
begin
insert into B select * from inserted
end

触发器本身的工作原理就是一条一条的处理,插入1条自动处理1次,一次批插入N条,触发器处理N次

for insert 触发器的工作原理:

DBMS在数据进行插入的时候,每插入一条记录后触发触发器,将插入的所有数据保存在inserted临时表中,

以上范例中:insert into B select * from inserted 就是将inserted临时表中的数据插入到B表中,

此次触发器执行完毕,系统自动删除inserted表.如果批插入多条,将再次出发此触发器

基本要求:B表结构和A表结构一模一样.

其结果符合楼主所有要求
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lwpriag
2011-05-14 · TA获得超过1282个赞
知道小有建树答主
回答量:690
采纳率:0%
帮助的人:380万
展开全部
修改用update触发器就可以了 在inserted中找出新数据然后象B表中插入相应的数据,在你修改 A表的时候就自动触发触发器。
create trigger tri_A
on A
for update
as
insert into 列名 select 列名 from inserted
go
update A set 相应的列=新值 where 条件
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友4f844bc
2011-05-09 · TA获得超过160个赞
知道小有建树答主
回答量:119
采纳率:0%
帮助的人:92.8万
展开全部
插入B表时要向A表中插入数据吗?需要的话,就需要用替代触发器,
关于替代触发器:参考:http://hi.baidu.com/420350501/blog/item/ed3c9b1b0af7206df724e4e8.html
如果不需要,用一般的触发器就可以解决问题。
create trigger test_bir before insert on a for each row
begin
insert into b values(:new.id,........);
end ;
关于触发器的简单用法:http://hi.baidu.com/420350501/blog/item/1a80c655f320ff818d5430ef.html
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
huanghao808
2011-05-08 · 超过16用户采纳过TA的回答
知道答主
回答量:121
采纳率:100%
帮助的人:85.9万
展开全部
插入时有一个inserted表啊。。。
用变量得到插入的这个值可以不。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式