Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共10 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:求助更新代码

1楼
exonjee 发表于:2010/5/18 9:18:00

为什么以下代码运行报错列名无效,是什么原因。检查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

 

以下报错截图:


图片点击可在新窗口打开查看此主题相关图片如下:pp.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2010-5-18 9:22:20编辑过]
2楼
狐狸爸爸 发表于:2010/5/18 9:20:00

检查生成的SQL语句:

 

MessageBox.show(cmd.CommandText)

3楼
exonjee 发表于:2010/5/18 9:26:00
以下是引用狐狸爸爸在2010-5-18 9:20:00的发言:

检查生成的SQL语句:

 

MessageBox.show(cmd.CommandText)


图片点击可在新窗口打开查看此主题相关图片如下:q.jpg
图片点击可在新窗口打开查看
4楼
狐狸爸爸 发表于:2010/5/18 9:44:00

如果是SQL Server,False要括起来,例如:

 

cmd.CommandText = "UPDATE {表A} SET 第十列 = 'False'"

[此贴子已经被作者于2010-5-18 9:44:59编辑过]
5楼
狐狸爸爸 发表于:2010/5/18 9:47:00

或者使用0表示False,1表示True:

 

cmd.CommandText = "UPDATE {表A} SET 第十列 = 0"

6楼
exonjee 发表于:2010/5/18 9:54:00

试下先

 

7楼
exonjee 发表于:2010/5/18 10:24:00
以下是引用狐狸爸爸在2010-5-18 9:44:00的发言:

如果是SQL Server,False要括起来,例如:

 

cmd.CommandText = "UPDATE {表A} SET 第十列 = 'False'"

[此贴子已经被作者于2010-5-18 9:44:59编辑过]

用这个方法还会报错,varchar转换bit时发生错误,这个是BUG吗?

 

不过用0是可以解决问题了,谢谢!

8楼
狐狸爸爸 发表于:2010/5/18 10:25:00

这不是bug,不同的数据源,SQL语句会有差别的

9楼
exonjee 发表于:2010/5/18 10:28:00
还有就是SQL中的逻辑型数据在foxtable中会显示方框内有阴影,需要在SQL中设置约束键才能取消
10楼
liuruihua 发表于:2010/5/18 12:08:00
用户已锁定!
共10 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .07813 s, 2 queries.