我看了一下SQL SERVER的帮助文件,触发器对处理一批记录时是只能触发一次的,不过我已经解决了

解决方案 »

  1.   

    应该是你的触发器的问题。你的插入语句用这样试试Insert B Select * from Inserted
      

  2.   

    关键我是要对这批添加的记录进行判断,我已经自己解决了,大家可以看看我的代码,功能是根据身份证号获得生日CREATE   TRIGGER [GetBirth] ON [dbo].[T_UsrInfo] 
    FOR INSERT, UPDATE
    AS
      UPDATE T_USRINFO SET
        BIRTH=SUBSTRING(T_USRINFO.CERTIFICATE_NO,7,2)+'-'+SUBSTRING(T_USRINFO.CERTIFICATE_NO,9,2)
     FROM T_USRINFO,INSERTED
       WHERE T_USRINFO.CODE IN (SELECT CODE FROM inserted WHERE LEN(CERTIFICATE_NO)=15)  UPDATE T_USRINFO SET
        BIRTH=SUBSTRING(T_USRINFO.CERTIFICATE_NO,9,2)+'-'+SUBSTRING(T_USRINFO.CERTIFICATE_NO,11,2)
     FROM T_USRINFO,INSERTED
       WHERE T_USRINFO.CODE IN (SELECT CODE FROM inserted WHERE LEN(CERTIFICATE_NO)=18)