用SQL server2008  想在A表数据添加后,通过A表的数据来创建B表。但是怎么才能得到刚刚添加进来的A表具体值呢。求帮忙

解决方案 »

  1.   

    if object_id('tr_test') is not null drop trigger tr_test
    go
    create trigger tr_test
    on A
    for insert
    as
    begin
    if object_id('B') is null
    begin
    create table B
    (
    ID varchar(10),
    ACC int
    )
    end
    insert into B
    select * from inserted
    end
    goselect * from A/*
    ID ACC
    -------------
    A0012  20
    A0014  30
    */insert into A select 'A0090',30
    union all select 'A0120',20select * from A/*
    ID ACC
    -------------
    A0012  20
    A0014  30
    A0090  30
    A0120  20
    */select * from B/*
    ID ACC
    -------------
    A0090  30
    A0120  20
    */
      

  2.   

    楼主需要了解触发器触发器两个临时表  inserted  deleted插入触发器  inserted  存储插入数据  deleted  空
    更新触发器  inserted  存储更新的数据  deleted  存储原来未更新时的数据
    删除触发器  inserted  空  deleted  存储删除的数据
      

  3.   

    为什么出现 
    无法绑定由多个部分组成的标识符 "inserted.Id"。
      

  4.   

    哦 明白了 要写成 select id from inserted 就OK了 我一直用 inserted.Id没成功