以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]insert into 报错了  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=159503)

--  作者:chnfo
--  发布时间:2020/12/28 20:21:00
--  [求助]insert into 报错了
Dim cmd As new SQLCommand
cmd.ConnectionName = “XXX”
cmd.CommandText = " INSERT INTO TbMod (ID,ProID,ConID,AC,AT,AD,AV,RC,RT,RD,RV,R) VALUES (\'aaa\',\'bbb\',null,null,null,null,null,null,null,null,null,null)"
cmd.ExecuteNonQuery

报错了。只提示这个东东
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2020.5.29.8
错误所在事件:
详细错误信息:
INSERT INTO 语句的语法错误。

这里面,AD、RD是日期型,AV、RV是数值型,其它提字符串。

如果没有值,用null不行么?

--  作者:有点蓝
--  发布时间:2020/12/28 20:31:00
--  
null可以的,我测试没有问题。试试给列名都加上中括号
--  作者:chnfo
--  发布时间:2020/12/28 20:42:00
--  
果然是中括号的问题。
用access做数据库,要加中括号的。否则会报错
用SQL不知道要不要加,我这里没装SQL还没法试,是必须要加,还是可加可不加,还是不能加哟?


另外,用insert into到后台的数据,_Sortkey还要手工处理?
[此贴子已经被作者于2020/12/28 20:50:30编辑过]

--  作者:有点蓝
--  发布时间:2020/12/28 21:03:00
--  
不是access就要加中括号的,而是这些列名应该有和数据库的sql语法关键字有冲突。建议sql里列名都加上中括号。

自己insert 数据的_Sortkey要自行手工处理