行显示为#DELETED

2021-12-12 00:00:00 ms-access sql-server

我在一台计算机上使用 Access 时在表中显示为 #DELETED 的数据行,但它们在 SQL 数据库和其他使用 Access 的计算机上都很好.似乎只有最新的 200 行.Access 2007 版本和 ODBC MSJet 驱动程序看起来相同每台计算机上的最新版本.一个建议是将任何 PK 或 FK 更改为 int,但它们已经是.

I have rows of data in a table showing as #DELETED on one computer when using Access but they are fine in both the SQL database and on other computers using Access. It seems to be only the latest 200 rows. The Access 2007 versions and ODBC MSJet drivers look to be the same & latest on each computer. One suggestion was to change any PK or FK's to int's, but they already are.

对此有什么解决办法吗?

Any ideas for a fix for this?

推荐答案

当表的主键值超出 MS Access 支持的范围时,通常会发生这种情况,如果您在 SQL Server 中使用BigInt"类型,如果您只是想读取数据,然后只需为表创建一个快照"查询,所有行都将正确显示,因为快照"不需要读取所有索引.

This occurs when the tables primary key value, exceeds the range that MS Access supports, usually if you are using the "BigInt" type in SQL Server, if you are only looking to read the data then just create a "snap-shot" query for the table and all rows will display correctly as the "snap-shot" does not need to read all the indexes.

如果您需要随时更新这些行中的数据,那么我建议改用 ADO 记录集.

If you need to update the data in these rows at any time then I suggest using an ADO recordset instead.

相关文章