Rss & SiteMap
Foxtable(狐表) http://www.foxtable.com
为什么以下代码运行报错列名无效,是什么原因。检查SQL数据库列名没错呀,代码执行却总报错
dim con as string="ABC"
with tables("导航_trv")
if .count>0 then
for each r as row in .rows
Dim cmd As New SQLCommand
cmd.connectionname=con
cmd.CommandText ="update _setgrid set 表名='" & r("表名") & "',列名='" & r("列名") & "',列宽=" & r("列宽") & ",隐藏=" & r("隐藏") & ",操作员='" & r("操作员") & "',操作时间='" & r("操作时间") & "' where _identify=" & r("_identify")
cmd.ExecuteNonQuery()
next
messagebox.show("提交数据完成!","提示")
else
messagebox.show("当前表无数据可提交!","提示")
end if
end with
以下报错截图:
检查生成的SQL语句:
MessageBox.show(cmd.CommandText)
如果是SQL Server,False要括起来,例如:
cmd.CommandText = "UPDATE {表A} SET 第十列 = 'False'"
或者使用0表示False,1表示True:
cmd.CommandText = "UPDATE {表A} SET 第十列 = 0"
试下先
如果是SQL Server,False要括起来,例如:
cmd.CommandText = "UPDATE {表A} SET 第十列 = 'False'"
用这个方法还会报错,varchar转换bit时发生错误,这个是BUG吗?
不过用0是可以解决问题了,谢谢!
这不是bug,不同的数据源,SQL语句会有差别的