一般来说该方法多数表现为Access链接表使用了(是/否)作为字段值,如图1所示该值在Access表现为-1/0,而Sqlserver服务器该值是bit,表现为1/0如(图2)所示。
(图1)Access表
(图2) Sqlserver数据
(表2)为access与Sqlserver的链接表。当在最下一行输入一个数值时,access会自动默认添加一行。此时查看Sqlserver值会发现只插入一个字段值,其他字段为null,而该字段值取决于你在access的哪个字段输入。如(图3)所示,在字段1输入一个值0,access表增加一行,虽然access看起来其他字段为0,实际添加到sqlserver的值只有字段1,其他为Null。因为其使用的语法为insert into ....字段1。此时查看sqlserver数据(如图4)所示
图3 在access中增加一行
图4 查看sqlserver增加结果
此时如果在access中更改第32新增行的字段2,字段3,字段4则结果为写入错误,如图5所示。
图5 写入冲突错误。
此时想解决此问题可以有3种方法
(方法1)在access新增完数据后,应该要刷新sqlserver中的Null值,防止其为null导致写入错误。
(方法2)使用update直接在access中更新表数据。
(方法3)在access中尽量避免使用是否值。
原文地址:https://www.cnblogs.com/luxingsh/p/10925492.html
时间: 2024-10-03 00:04:07