首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

动态话语中加入整形变量,执行报错

2013-08-04 
动态语句中加入整形变量,执行报错declare @m_xh intdeclare @sql varchar(1000)@m_xh 1 set @sqlupdate

动态语句中加入整形变量,执行报错
declare @m_xh int
declare @sql varchar(1000)
@m_xh =1
 set @sql='update khb set khb.金额=b.金额  from khb,( select '+@m_xh+'  as 序号,sum(佣金) as 金额 from kh ) b where khb.序号=b.序号'
  exec(@sql)



执行报
 select '' 转换为数据类型为 int 的列时发生语法错误。,谁知道整形变量该怎么加啊
[解决办法]
declare @m_xh int
declare @sql varchar(1000)
SET @m_xh =1
set @sql='update khb set khb.金额=b.金额  from khb,( select '+RTRIM(@m_xh)+'  as 序号,sum(佣金) as 金额 from kh ) b where khb.序号=b.序号'
exec(@sql)

[解决办法]
declare @m_xh int declare @sql varchar(1000) @m_xh =1  set @sql='update khb set khb.金额=b.金额  from khb,( select '+cast(@m_xh as varchar)+'  as 序号,sum(佣金) as 金额 from kh ) b where khb.序号=b.序号'  

热点排行