create trigger tr
on 表 
for insert
as
update 表 
set product_id='wpbh'+convert(varchar,ID)
where ID in(select ID from inserted)

解决方案 »

  1.   

    vivianfdlpw() ,那样有错误啊,我的 ID 是自动编号的
      

  2.   

    --一楼的可以啊!
    -测试环境
    --建表
    Create table  Testt  (ID int IDENTITY(1,1),product_id varchar(10) ,product_name varchar(20))--建触发器
    Create Trigger T_Testt on Testt
    for insert
    as
    update Testt
    set product_id='wpbh'+convert(varchar,ID)
    where ID=(select ID from inserted)--插入数据
    insert into Testt select NULL,'A'
    insert into Testt select NULL,'B'
    insert into Testt select NULL,'C'
    --查看结果 select * from Testt 
    --结果:
    ID          product_id product_name         
    ----------- ---------- -------------------- 
    1           wpbh1      A
    2           wpbh2      B
    3           wpbh3      C
      

  3.   

    --如果楼住实现当前product_id 的ID 是当前ID+1 就这样写触发器Create Trigger T_Testt on Testt
    for insert
    as
    update Testt
    set product_id='wpbh'+convert(varchar,ID+1)
    where ID=(select ID from inserted)
    --测试语句
    insert into Testt select NULL,'A'
    insert into Testt select NULL,'B'
    insert into Testt select NULL,'C'--查看结果 select * from Testt
     
    ID          product_id product_name         
    ----------- ---------- -------------------- 
    1           wpbh2      A
    2           wpbh3      B
    3           wpbh4      C--删除测试环境
    Drop table Testt