使用VBA通过INSERT INTO语句插入日期时间至表时触发运行时错误3134
解决INSERT INTO语句语法错误(运行时错误'3134')
- 错误根源:字段名
Time是Access SQL的保留关键字,直接在SQL语句中使用会触发语法解析错误。 - 修正方案:给保留字字段名加上方括号
[],明确告诉数据库这是字段名称而非关键字。
修正后的代码:
SqlCode = "INSERT INTO LogT (reps, exerciseID, WorkoutDate, [Time]) VALUES (30, 1, Date(), Now());" DoCmd.RunSql SqlCode
补充说明:
- 如果你是要分别插入日期和时间,
Date()会返回当前日期(无时间部分),Now()返回当前日期+时间,这个逻辑是没问题的。 - 后续使用Access SQL时,尽量避免用保留字当字段名,比如
Time、Date、Name这类,能减少不必要的语法问题。
内容的提问来源于stack exchange,提问作者Picayuni
相关产品推荐
相关产品推荐

