关于动态SQL的写法

来源:互联网 发布:三菱plcq系列怎么编程 编辑:程序博客网 时间:2024/05/16 10:54

注意:SQL中单引号的表示方法为 '',所以如果要插入一个单引号要写成:''''

 

ALTER PROCEDURE dbo.sp_IS_Insert
(@Number nvarchar(200),
 @Extension nvarchar(5),
 @IsDate nvarchar(20),
 @CnName nvarchar(2000),
 @SearchName nvarchar(2200),
 @Filename nvarchar(205),
 @AddedUser nvarchar(50),
 @TableName nvarchar(50)
)
AS
    Exec(
          'Insert Into ' + @TableName + ' (Number,Extension,IsDate,CnName,SearchName,Filename,AddedUser) Values(' +
          '''' + @Number + '''' + ',' +
          '''' + @Extension + '''' + ',' +
          '''' + @IsDate + '''' + ',' +
          '''' + @CnName  + ''''+ ',' +
          '''' + @SearchName + '''' + ',' +
          '''' + @Filename + '''' + ',' +
          '''' + @AddedUser + '''' + ')'
        )
       
       
        /**//*
        注释中的代码为错误的代码
       
    Exec(
          'Insert Into is' + @TableName + ' (Number,Extension,IsDate,CnName,SearchName,Filename,AddedUser) Values(' +
          @Number + ',' +
          @Extension + ',' +
          @IsDate + ',' +
          @CnName + ',' +
          @SearchName + ',' +
          @Filename + ',' +
          @AddedUser + ')'
        )
       
          */