CREATE TRIGGER TRIGGER_Receive ON [dbo].[Sms_Receipt] 
FOR INSERT 
AS
Begin
    SET NOCOUNT ON
    declare @from_no char(11)
    declare @content varchar(150)
    declare @Recetime datetime
    declare @left_1 varchar(10)
    declare @Right_1 varchar(20)    declare Rece_cursor cursor local for select from_no,content,[time] from inserted
    open Rece_cursor
    fetch next from level_cursor into @from_no,@content,@Recetime
    while @@fetch_status=0
    begin
        set @from_no=rtrim(@from_no)
set @content=lower(@content)
set @Recetime=@Recetime
set @left_1 = left(@content,1)
set @Right_1 = right(@content,len(@content)-1)
  
if left(@content,1) = 'p'  
begin  
    if ISNUMERIC(@Right_1) 
    begin
         insert Sms_Send(to_no,content,fee_) select @from_no,'abc',3
    end
end
   
fetch next from Rece_cursor into @from_no,@content,@Recetime
    end
    
    close Rece_cursor
    DealLocate Rece_cursor
End
GO

解决方案 »

  1.   

    to  libin_ftsafe(子陌红尘)将你的整个代码复制,提示 错误156 :begin 附近有语法错误不知为什么??
      

  2.   

    CREATE TRIGGER TRIGGER_Receive ON [dbo].[Sms_Receipt] 
    FOR INSERT 
    AS
    Begin
        SET NOCOUNT ON
        declare @from_no char(11)
        declare @content varchar(150)
        declare @Recetime datetime
        declare @left_1 varchar(10)
        declare @Right_1 varchar(20)    declare Rece_cursor cursor local for select from_no,content,[time] from inserted
        open Rece_cursor
        fetch next from level_cursor into @from_no,@content,@Recetime
        while @@fetch_status=0
        begin
            set @from_no=rtrim(@from_no)
    set @content=lower(@content)
    set @Recetime=@Recetime
    set @left_1 = left(@content,1)
    set @Right_1 = right(@content,len(@content)-1)
      
    if left(@content,1) = 'p'  
    begin  
       if ISNUMERIC(@Right_1) =1   ---这 
        begin
             insert Sms_Send(to_no,content,fee_) select @from_no,'abc',3
        end
    end
       
    fetch next from Rece_cursor into @from_no,@content,@Recetime
        end
        
        close Rece_cursor
        DealLocate Rece_cursor
    End
    GO
      

  3.   

    CREATE TRIGGER TRIGGER_Receive ON [dbo].[Sms_Receipt] 
    FOR INSERT 
    AS
    Begin
        SET NOCOUNT ON
        declare @from_no char(11)
        declare @content varchar(150)
        declare @Recetime datetime
        declare @left_1 varchar(10)
        declare @Right_1 varchar(20)    declare Rece_cursor cursor local for select from_no,content,[time] from inserted
        open Rece_cursor
        fetch next from level_cursor into @from_no,@content,@Recetime
        while @@fetch_status=0
        begin
            set @from_no=rtrim(@from_no)
    set @content=lower(@content)
    set @Recetime=@Recetime
    set @left_1 = left(@content,1)
    set @Right_1 = right(@content,len(@content)-1)
      
    if left(@content,1) = 'p'  
    begin  
        if ISNUMERIC(@Right_1) =1
        begin
             insert Sms_Send(to_no,content,fee_) select @from_no,'abc',3
        end
    end
       
    fetch next from Rece_cursor into @from_no,@content,@Recetime
        end
        
        close Rece_cursor
        DealLocate Rece_cursor
    End
    GO