连接到 ODBC 时出现 MS Access 错误

Posted

技术标签:

【中文标题】连接到 ODBC 时出现 MS Access 错误【英文标题】:MS Access error when connected to ODBC 【发布时间】:2014-03-05 16:20:34 【问题描述】:

当尝试在 MS Access 2010 中的 Varchar 不为 null 的字段中添加一行时,我收到错误“您尝试将 Null 值分配给不是变体数据类型的变量”

我正在使用来自 sql 数据库的 ODBC 连接,它允许表中的空值,但在尝试在访问中添加行时不允许

根据我的阅读,我认为这是 2007 年的常见错误?

首先,有谁知道这个问题是否有简单的解决方法?

其次,我在我目前使用的 Office 2010 Professional plus 版本 14.0.7015.1000 的 microsoft 网站上看不到此补丁

【问题讨论】:

【参考方案1】:

在 Access 中,当“直接”将值输入到表中(在数据表视图中或在绑定表单中)时,只需将单元格/控件留空将尝试插入 NULL 值。如果基础表中的对应列不允许 NULL 值,则插入将失败。

解决方法是输入

""

进入单元格/控件以指定一个空字符串(与 NULL 值不同)。我刚刚在一个 ODBC 链接表上针对 Access 2010 中的 SQL Server 2008 R2 进行了测试,它工作正常。

【讨论】:

嘿 Thompson ,这与 Access to SQL Server 类似地用于我们的流程,但现在似乎只有一个条目不接受“”,而其余行都很好,只有一行不接受并抛出错误【参考方案2】:

user2615341,似乎 MS SQL Server 在任何其他事件被触发之前就跳入了(BeforeUpdate/Click/LostFocus...)。我的个人经验让我建议你,如果你想完全控制正在发生的事情,你必须构建一个代理类型/类并使用断开连接的表单。

【讨论】:

以上是关于连接到 ODBC 时出现 MS Access 错误的主要内容,如果未能解决你的问题,请参考以下文章

MS Access ODBC 问题

使用 ODBC 连接到 MYSQL 在 MS-Access 中运行 SQL 时出错

连接到安装了单声道的 Informix DB 时出现 ODBC 错误

“调用未定义函数 odbc_exec()”错误连接到 Linux PHP 服务器上的 Access 数据库

IIB - 通过 mqsicvp 连接到 DB2 ODBC DSN 时出现 DLL 初始化错误

通过 ODBC 连接到 SQL Server 的 Access 中的 MS SQL 查询