sql中两张表A和B,有一列同名都是 id 要求A表中aa列自动取B表中bb列数据,当B表中bb列增加时A表同时更新

表A
ID AA NUMBER
1 22 2222222
表B
ID BB HH
1 22 455
在表B增加新的行时,表A 的aa列自动取表B的bb列数据
要B表插入数据的时候,A表自动插入数据,B表数据更新的时候,A表数据也更新,
麻烦老大们写个触发器参考下

第1个回答  2012-06-10
前提条件 B数据条数大于A
declare @num int,@count int
Set @num=1;
SET @count=(select MAX(ID) from A);--获取A最大ID,ID是自动增长
PRINT @COUNT
while(@num<=@count)
BEGIN
--更新数据
update A SET NAME=(select Name from B where ID=@num) where ID=@num
SET @num=@num+1
PRINT @num
END
print '更新后的表:'
SELECT * FROM A
--2插入A表没有是数据:
insert into A(NAME)(select NAME from B WHERE ID not IN (SELECT TOP(@count) ID FROM B))
PRINT '插入后的表:'
SELECT * FROM A
第2个回答  2011-11-04
首选触发器,触发器就三种情况,新增时、删除时、修改时
完全可以满足你的需求
第3个回答  2011-11-04
你是希望B表插入数据的时候,A表自动插入数据?
还是希望B表数据更新的时候,A表数据更新?
第4个回答  2011-11-04
用触发器实现就可以。