当尝试在一个Varchar非空字段中在MS Access 2010中添加一行时,我收到错误“您尝试将Null值分配给不是变体数据类型的变量”
我正在使用来自sql数据库的ODBC连接,它允许表中的空值,但在尝试在访问中添加行时不能
我认为这是我在2007年读到的一个常见错误吗?
首先,是否有人知道这个问题是否有简单的解决方法?
其次我在微软网站上看不到这个补丁我目前正在使用Office 2010专业版加14.0.7015.1000
答案 0 :(得分:4)
在Access中,当在表格中“直接”输入值时(在数据表视图中或以绑定形式),只需将单元格/控件保留为空将尝试插入NULL值。如果基础表中的相应列不允许NULL值,则插入将失败。
解决方法是键入
""
进入单元格/控件以指定空字符串(与NULL值不同)。我刚刚在一个ODBC链接表上对Access 2010中的SQL Server 2008 R2进行了测试,并且它运行良好。
答案 1 :(得分:0)
user2615341,似乎MS SQL Server在任何其他事件被触发之前跳入(BeforeUpdate / Click / LostFocus ......)。我个人的经验告诉我,如果你想完全控制正在发生的事情,你必须建立一个代理类型/类并使用断开连接的表单。