你目前正处于脱机状态,正在等待 Internet 重新连接

当您运行查询与优化程序提示 NOLOCK,或将事务隔离级别设置为提交读 SQL Server 中时,您会收到"错误 605"错误消息

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

点击这里察看该文章的英文版: 235880
概要
优化器提示 NOLOCK 与运行查询或设置为读未提交的事务隔离级别,可能生成暂时的 605 错误消息。
更多信息
通常,访问数据的正在更改的另一个用户或进程由于被拒绝数据上放置的锁。但是,NOLOCK 和读取未提交命令启用读取已由另一个用户锁定的数据的查询。这被称为脏读因为您可以读取的值还未提交,会发生更改。

当使用 NOLOCK 或读取未提交的查询试图读取正在移动的数据或其他用户更改 605 错误发生。读取已提交的数据时,脏读操作期间发生的 605 错误的严重度级别是 12 而不是严重级别为 21。发生了严重级别为 12 的 605 错误后,它是很有可能是暂时的 605 错误并不表示数据库一致性问题。若要验证它是暂时的 605 错误,请稍后重新运行查询。

如果错误仍然存在,您可以删除 NOLOCK 提示或设置为读提交的事务隔离级别,并验证 605 严重级别 21 不会发生。605 级别 21 错误表示可能的数据库损坏。如果发生 605 级别 21 错误,对 SQL Server 联机丛书的详细信息,请参阅和更多的帮助,请联系您的主要支持提供者联系。

警告:本文已自动翻译

属性

文章 ID:235880 - 上次审阅时间:02/22/2007 22:36:32 - 修订版本: 4.3

Microsoft SQL Server 6.0 标准版, Microsoft SQL Server 6.5 标准版, Microsoft SQL Server 7.0 标准版, Microsoft SQL Server 2000 标准版, Microsoft SQL Server 2005 Standard Edition, Microsoft SQL Server 2005 Express Edition, Microsoft SQL Server 2005 Developer Edition, Microsoft SQL 2005 Server Enterprise, Microsoft SQL 2005 Server Workgroup

  • kbmt kbinfo KB235880 KbMtzh
反馈
ement('meta');m.name='ms.dqp0';m.content='true';document.getElementsByTagName('head')[0].appendChild(m);" onload="var m=document.createElement('meta');m.name='ms.dqp0';m.content='false';document.getElementsByTagName('head')[0].appendChild(m);" src="http://c1.microsoft.com/c.gif?">