这个语句问题在哪里??

lanfanghelanfanghe 2004-09-26 04:15:57
declare @my_billnum varchar(50)
select @my_billnum = 'P0'+bill_num from inserted
......


exec('update '+@tbs+' set iRAmount_f = '+@my_value +'where '+@tbs+'.clink='+@my_billnum)


出错说:列名0000001无效。

请问如何解决

...全文
146 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
vileboy 2004-09-26
  • 打赏
  • 举报
回复
改成這樣看看
exec('update '+@tbs+' set iRAmount_f = '+@my_value +'where '+@tbs+'.clink='''+@my_billnum+'''')
lanfanghelanfanghe 2004-09-26
  • 打赏
  • 举报
回复
wo up
lanfanghelanfanghe 2004-09-26
  • 打赏
  • 举报
回复
字段不肯定不是,因为我想用的是那个变量的值
zhaochengqing 2004-09-26
  • 打赏
  • 举报
回复
你看一下是不是你数据库的字段名不是这个啊,有可能是这个原因我以前碰到过差不多的问题!
lanfanghelanfanghe 2004-09-26
  • 打赏
  • 举报
回复
我改了,不是那里的毛病啊
yjdn 2004-09-26
  • 打赏
  • 举报
回复
是不是在'where '这里少了空格
改为' where '看看
lanfanghelanfanghe 2004-09-26
  • 打赏
  • 举报
回复
不是,他把这个变量认为成了列名,我要的就是iRAmount_f等于一个值
yjdn 2004-09-26
  • 打赏
  • 举报
回复
exec('update '+@tbs+' set iRAmount_f = '+@my_value +'where '+@tbs+'.clink='+@my_billnum)
==是不是这里少了个空格?
heibai520 2004-09-26
  • 打赏
  • 举报
回复
列名0000001无效这样的错误一般都是你指的列名不存在你用的
的那个表(基表等)
lanfanghelanfanghe 2004-09-26
  • 打赏
  • 举报
回复
@my_billnum的值是0000001

为什么把这个变量变成了列名

34,588

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧