Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

SQL 语句执行错误,请帮忙修改下看看哪里错了。

shi xiao li  发表于:2015-09-09 15:20:53  
复制

 strSql = "insert into 入库表(存货编码,名称,规格,单位,入库数量,入库日期) "

strSql = strSql & "VALUES('"
strSql = strSql & [Forms]![入库单输入]![Text4]

strSql = strSql & "'," & [Forms]![入库单输入]![Text6]

strSql = strSql & "'," & [Forms]![入库单输入]![Text8]

strSql = strSql & "," & [Forms]![入库单输入]![Text10]

strSql = strSql & ",#" & [Forms]![入库单输入]![Text13]

strSql = strSql & ",#" & [Forms]![入库单输入]![Text16]

strSql = strSql & ")"
DoCmd.RunSQL strSql

End Sub 

运行以上程序时提示以下错误






点击调试出现如下:






请问如何解决?

其中text13是数字,text16是日期,其余都是文本格式。请高手指点下。谢谢!





 

Top
易勋 发表于:2015-09-09 15:48:42

DoCmd.RunSQL strSql

前面写:debug.print strSQL

然后看看SQL代码,并复制到查询的SQL视图中去运行

初略看了一下,符号都了好多



huashanshihu 发表于:2015-09-09 19:48:12

我也遇到这样的问题,我是跟着一个示例数据库做的,前面的都成功了,但是后面的有问题,和你的好像一样。



丘山 发表于:2015-09-10 00:07:13

日期值的 # 号,字符串的 ' 号 要成对匹配

 



shi xiao li 发表于:2015-09-10 08:45:12
试了下楼主说的方法还是不行,请问语法有错误吗?帮忙更正下。谢谢!

cspa 发表于:2015-09-10 11:16:20
strSql = "insert into 入库表(存货编码,名称,规格,单位,入库数量,入库日期)  VALUES('" & [Forms]![入库单输入]![Text4] & "','" & [Forms]![入库单输入]![Text6] & "','" & [Forms]![入库单输入]![Text8] & "','" & [Forms]![入库单输入]![Text10] & "'," & [Forms]![入库单输入]![Text13] ",#" & [Forms]![入库单输入]![Text16] & "#)"

DoCmd.RunSQL strSql

shi xiao li 发表于:2015-09-10 13:49:00


楼主,运行后显示语法错误



丘山 发表于:2015-09-10 15:48:01
[Forms]![入库单输入]![Text13] 后面缺少一个 & 连接符

cspa 发表于:2015-09-10 20:21:48

丘老师说的是对的,我上面的语句中少了个&连接符,还有就是楼主自作主张把语句分成了2行。如果你要用多行就要像下面一样:




strSql = "insert into 入库表(存货编码,名称,规格,单位,入库数量,入库日期)  " & _

"VALUES('" & [Forms]![入库单输入]![Text4] & "','" & [Forms]![入库单输入]![Text6] & _

"','" & [Forms]![入库单输入]![Text8] & "','" & [Forms]![入库单输入]![Text10] & "'," & _

[Forms]![入库单输入]![Text13] & ",#" & [Forms]![入库单输入]![Text16] & "#)"


DoCmd.RunSQL strSql


直接拷贝粘贴,以上除了可以把[]中的文本换成你的变量名外,一个空格,一个标点都不能改




shi xiao li 发表于:2015-09-11 09:02:52



楼主,运行显示日期语法错误,求更正!



丘山 发表于:2015-09-11 09:20:37

这个要么设置你的系统日期格式是

要么一用format函数把 [Forms]![入库单输入]![Text16]格式化一下



shi xiao li 发表于:2015-09-11 09:35:56
具体语句该怎么写?谢谢!

zhaoyoulong 发表于:2015-09-11 09:36:03

上传附件帮你改一下最省事




shi xiao li 发表于:2015-09-11 09:43:32

点击下载此附件

请入库单输入窗体中输入数据,数据添加到入库表



zhaoyoulong 发表于:2015-09-11 10:13:51

问题可能出在表的关系布局上

删除所有表的关系布局可以的(没有必要设这个关系布局)




zhaoyoulong 发表于:2015-09-11 10:14:28


shi xiao li 发表于:2015-09-11 10:23:37
删除关系后,重新输入数据还是显示日期语法错误,

cspa 发表于:2015-09-11 10:39:10

strSql = "insert into 入库表(存货编码,名称,规格,单位,入库数量,入库日期)  " & _

"VALUES('" & [Forms]![入库单输入]![Text4] & "','" & [Forms]![入库单输入]![Text6] & _

"','" & [Forms]![入库单输入]![Text8] & "','" & [Forms]![入库单输入]![Text10] & "'," & _

[Forms]![入库单输入]![Text13] & ",#" & format([Forms]![入库单输入]![Text16],"YYYY/MM/DD") & "#)"



zhaoyoulong 发表于:2015-09-11 10:47:44

在我的电脑上正常




shi xiao li 发表于:2015-09-11 14:50:31
如果我想在增加一个功能,在添加记录成功后,提示我记录已添加,语句应该怎么写。请指点

总记录:19篇  页次:1/1 9 1 :