![]() |
1
3
添加一行:
之后
转到即时窗口(ctrl+g)并复制完成的sql语句。然后创建一个新查询,切换到sql视图,并粘贴到sql语句中。找出声明失败的原因。我认为如果jobs表中的“date”字段是日期/时间数据类型,那么klabranche就是在赚钱。如果无法识别问题,请编辑问题以显示失败的SQL语句,并告诉我们作业字段的数据类型。 此外,jobs表还包含3个字段,这些字段的名称是保留字:date、rate和note。(见 http://allenbrowne.com/AppIssueBadWord.html )如果保留这些字段名,请至少用方括号将其括起来,以避免混淆访问:
|
![]() |
2
7
如果我没记错的话,你需要用英镑来包装你的约会。
我想你不需要在结尾加分号… |
![]() |
3
2
除了在klabranche提到的日期周围使用delimeters之外,还应该使用明确的日期格式。请使用格式(jobdate,“yyyy-mm-dd”)使用yyy-mm-dd的ISO标准,或参见 Return Dates in US #mm/dd/yyyy# format 再次检查测试字段周围是否使用引号,数字字段周围是否没有引号。projectid可能是数字,也可能是文本。 我将重命名表单上的text43和test48字段,以便更清楚地知道它们是什么。假设这是绑定表单,可以将它们设置为与字段相同的名称。 您不需要使用.value属性。 docmd.runsql的问题是它忽略任何错误。以下任一项将显示查询接收到的任何错误消息。如果使用dao,则使用currentdb.execute strsql,dbfailonerror..对于ADO使用CurrnEngutix.Calnal.ExtReSt命令,LngReordOrdSffEffice,AdCMdTeXT,您可以删除DOMM.StaveWrices线(如果有的话)。 如果要使用docmd.setwarnings,请确保将true语句也放入任何错误处理代码中。否则以后可能会发生奇怪的事情,尤其是当你在开发应用程序时。例如,如果关闭一个对象,您将不再收到“是否保存更改”消息。这可能意味着不需要的更改、删除或添加将保存到MDB中。 两种方法之间的性能也可以显著不同。一篇文章说currentdb.execute花了2秒,而docmd.runsql花了8秒。像往常一样。 hansup在使用保留字段名方面有一个很好的优点。参观 Tony's Table and Field Naming Conventions |
![]() |
4
0
我同意klabranche的观点,最可能的罪魁祸首是你需要在日期值周围加上哈希标记(“”)。不过,作为该思想的补充,如果使用currentdb.execute而不是docmd.runsql,则会向您提供一条信息性错误消息,告诉您具体是错误的。这将使调试 许多的 更容易的。希望能有帮助! |
![]() |
5
0
更改字段名后,这就是我的strsql所说的: 插入作业(jobdate、refno、projectd、pmanager、pdesc、pono、src_qty、wc_qty、jobRate、jobTotal、note、company)值(2009-09-20、'1'、'3'、'jean jou'、'4'、2、5、6、7、42、'9'、'magnus') 我已经多次检查了我的文本字段,它们是正确的。 IAM获取“运行时错误:3134,insert into语句中的语法错误”,而不考虑do.cmd或currentdb.execute 谢谢伙计们。 |
![]() |
blogger13 · 视频租赁店数据库的规范化 5 月前 |
![]() |
Pepito · 从一个选择中使用别名,以便在另一个选择中将其使用 6 月前 |
![]() |
Shiela · 日期/时间格式VBA访问查询 6 月前 |
|
Chuck S · Microsoft关于IIf声明或更好解决方案的问题 10 月前 |
![]() |
Tim O · 从MS Access 2016中的字符串字段中间提取数值 12 月前 |