当我在 SQL Server 2008 中修改表时,出现以下错误:
数据库 ID 29,页 (1:235225),LOB 数据类型节点的插槽 80 不存在。这通常是由可以读取数据页上未提交数据的事务引起的。运行 DBCC 检查表
谁能帮我?
Mar*_*sen 10
虽然普通列存储在实际的行记录(磁盘上的结构)中,但 LOB 列存储在不同的页面上,在原始页面上留下指向该页面的指针。
扫描表时,将扫描所有数据页,包括指向 LOB 页的指针。如果时机正确,并且您在 READ UNCOMMITTED 下运行,您可能会扫描数据页,但是当扫描包含 LOB 数据的页面时(通过跟随引用记录中的指针),它可能已被更改/删除同时。
它也可能是由损坏引起的,在这种情况下,您应该能够一次又一次地重现错误。在这种情况下,请运行 DBCC CHECKDB 来检查损坏问题。如果你不能重现它但它发生得太频繁,看看你是否不能改变隔离级别。
归档时间: |
|
查看次数: |
4945 次 |
最近记录: |