问题:
[Microsoft][ODBC Excel Driver] Operation must use an updateable query
症状
编辑时通过 ADO 和 ODBC Excel 工作表,您可能会收到以下错误消息,如果您使用 ADO DataControl对象:
生成一个记录集对象使用 ADO 代码后,如果您编辑通过 ADO 和 ODBC Excel 工作表时可能会收到以下错误消息:
[] Microsoft
[ODBC Excel 驱动程序]
操作必须使用可更新的查询。
运行时错误 '-2147467259(80004005): [Microsoft] [ODBC Excel 驱动程序] 操作必须使用一个可更新的查询。
原因
如果您尝试编辑已保存或以只读方式打开的工作表,将出现此问题。
注意: 只读是 ODBC 连接到 Excel,带有或不带数据源名称 (DSN) 的默认设置。 因此,用户必须始终更改的设置要编辑的数据。
注意: 只读是 ODBC 连接到 Excel,带有或不带数据源名称 (DSN) 的默认设置。 因此,用户必须始终更改的设置要编辑的数据。
解决方案
要解决此问题,请使用下列方法:
- 请确保该记录集对象的LockType属性未设置为只读
- 请确保您试图打开的文件不会存储为只读。
- 如果您要连接到一个 DSN,请执行以下步骤:
- 打开控制面板,然后单击ODBC 数据源管理器
- 双击您的 DSN。
- ODBC Microsoft Excel 设置 对话框中单击 选项。
- 请确保未选中 只读 复选框。
- 如果您使用的 dsn 的连接,请确保包括"只读 = 0"的连接字符串中的选项。例如: