c# - 在查询窗口中运行但不是从代码中运行是什么问题?
问题描述
以下 SQL 命令适用于我的代码和访问查询窗口:
Insert Into [Check] (CheckNumber,CheckDate,Amount,WhoTo,Category)
Values (1016,'5/10/2019 12:00:00 AM',123,'Steve',3)
但此 SQL 命令仅适用于 Access Query Window,不适用于代码
Insert Into [CheckMemo] (CheckNumber,Memo)
Values (1016,'Test')
我正在使用 Access 2013,代码来自 C# 连接字符串是
OleDbConnection Conn = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Checkbook.accdb;");
除上述功能外,程序中的所有其他数据库功能都运行良好。
解决方案
memo
是 MS Access 中的保留字。
因此,请尝试将此字段名称括在方括号中,例如:
insert into [CheckMemo] (CheckNumber, [Memo]) values (1016, 'Test')
推荐阅读
- c# - C# System.IO.File.Exists 在 Unity 中不起作用
- arrays - 将逗号分隔列表绑定到Angular 9中的复选框
- python - Google App Engine - 在数据库中创建虚拟记录
- ios - SwiftUI 是否仍然能够有效地重绘,因为它不需要模型符合 Equatable 协议?
- flutter - 将数据从 API 转换为列表并在相关的下拉按钮中使用
- react-native - 澄清:我可以将fastlane截取的截图上传到s3(或者它总是会给出html链接来查看截图)
- discord.js - Kick/Ban Command 的 Discord.js v12 有原因
- python - 必须使用 URLconf 中的对象 pk 或 slug 调用通用详细视图
- python - 在 python TypeError: unhashable type: 'numpy.ndarray'
- c++ - 有没有办法知道 Qt 中哪个信号触发的插槽?