You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Access外部表INSERT语句语法错误排查及日期时间插入需求

解决Access VBA INSERT INTO语句语法错误(含日期/时间字段插入)

问题分析

从你的代码来看,语法错误主要出在VALUES子句的括号配对和日期/时间函数的处理上:

  • 初始代码中,VALUES后面缺少开头的左括号,导致整个字段值的结构不完整
  • Date()和Time()是Access的内置函数,不需要用单引号包裹(单引号仅用于字符串类型值,比如你的CDP字段)

修正后的完整代码

CurrentDb.Execute "INSERT INTO [MS Access;pwd=" & strPassword & ";database=" & DBpath & "\" & DBname & "].[" & tblengagement & "]" _ 
& "(CDP, Open_Date, Open_Time) VALUES " _ 
& "('" & Environ("UserName") & "', Date(), Time());"

关键修正点拆解

  • 补全VALUES的括号:在VALUES后添加了左括号(,和结尾的)配对,确保三个字段值被正确包裹在括号内
  • 正确处理日期/时间函数:Date()和Time()直接作为SQL的一部分执行,不需要额外引号(Access会自动识别为日期/时间类型)
  • 保持字符串字段的引号:Environ("UserName")是字符串值,所以依然用单引号'包裹,符合SQL字符串的语法要求

验证说明

对比你能运行的仅插入CDP的代码,修正后的代码只是补充了日期/时间字段的正确写法,同时修复了括号缺失的语法问题。执行这段代码后,就能同时将用户名、当前日期、当前时间插入到目标表的对应字段中。

内容的提问来源于stack exchange,提问作者dmorgan20

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 08:49:51