当前位置: 代码迷 >> Sql Server >> sql server动态SQL怎么传入int型变量
  详细解决方案

sql server动态SQL怎么传入int型变量

热度:42   发布时间:2016-04-24 09:07:04.0
sql server动态SQL如何传入int型变量
代码如下:

begin
set @i = @i*-1; 
  set @sql='select substring(convert(varchar(8),dateadd(mm,'+@i+',getdate()),12),0,5)'
  exec(@sql);


错误信息:
消息 245,级别 16,状态 1,过程 ADD_SAP_EVERYDAY,第 288 行
在将 varchar 值 'select substring(convert(varchar(8),dateadd(mm,' 转换成数据类型 int 时失败。
------解决思路----------------------
begin
set @i = @i*-1; 
  set @sql='select substring(convert(varchar(8),dateadd(mm,'+CAST(@i AS VARCHAR)+',getdate()),12),0,5)'
  exec(@sql);
  相关解决方案