怎么使用触发器向一张表中添加多条数据

在sql server中我有一张用户表和一张好友表,当我向用户表中添加一个的时候,把这个用户添加给所有的用户为好友,把所有的用户添加为这个用户的好友
用户表(User)
User_id
User_name
User_pwd
好友表(friend)
User_id
Friend_id
Friend_name
怎么用触发器完成 各位大侠们帮帮忙啊

作者: kaimzge   发布时间: 2011-06-09

SQL code
create trigger tr_insert_tb
on tb
for insert
as
begin
  insert friend
  select i.[user_id],t.[user_id],t.[user_name] from isnerted i,[user] t
  where i.[user_id]!=t.[user_id]
end

作者: FlySQL   发布时间: 2011-06-09

SQL code
insert into friend
 select a.user_id,b.user_id,b.user_name
  from User a,inserted b where a.user_id<>b.user_id
  union all
 select b.user_id,a.user_id,a.user_name
  from User a,inserted b where a.user_id<>b.user_id

作者: zy112429   发布时间: 2011-06-09

SQL code
create trigger tr_test on tb
for insert
as
begin
    --#1.所有的用户添加为这个用户的好友
    INSERT friend
    SELECT i.[User_id], u.[User_id], u.[User_name]
    FROM isnerted i, [User] u
    WHERE i.[User_id] <> u.[User_id] --自己不添加自己为好友
    
    --#2.这个用户添加给所有的用户为好友
    INSERT friend
    SELECT u.[User_id], i.[User_id], i.[User_name]
    FROM [User] u, isnerted i
    WHERE u.[User_id] <> i.[User_id] --自己不添加自己为好友
END
GO

作者: wwwwgou   发布时间: 2011-06-09