sql server中拼接字符串时,需要把int型转化为char型才能进行拼接
例如:
declare @pointID int
set @pointID = 10001
select 'INSERT into table1(pointID) VALUES ('+@PointID+');'
提示错误:
将 varchar 值 ‘INSERT into table1(pointID) VALUES (’ 转换成数据类型 int 时失败。
解决方案:
将int转换为char类型就可以
例如:
declare @PointID int
set @PointID = 10001
select 'INSERT into table1(pointID) VALUES ('+rtrim(ltrim(Str(@PointID)))+');'
-- 或者 select 'INSERT into table1(pointID) VALUES ('+CONVERT(char(10),@PointID)+');'
运行结果: