您的位置:首页 > 数据库

SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正确 解决方案

2013-04-15 11:31 260 查看
之前在做sql server数据统计存储过程,统计方式大致是先根据时间范围查询数据,将查询结果存储到临时表中,再对临时表中的数据进行统计,最后删除临时表。由于这个存储过程相对比较复杂,中间做了很多调整,今天终于把存储过程改的差不多了,执行的时候却出现“SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正确”错误。直接调用select语句查询对应表的所有数据(表数据量为41万条)也会返回相同的错误。从网上搜索相关原因,应该是之前测试的时候存储过程执行未完成,将数据存储在临时表中,但未执行到删除临时表就退出了,导致数据错误。

解决方法是执行以下sql

use MyDB
go
ALTER DATABASE MyDB SET SINGLE_USER   --设置为单用户
DBCC CHECKDB (MyDB, repair_allow_data_loss) with NO_INFOMSGS   --允许丢失错误
go
ALTER DATABASE MyDB SET MULTI_USER   --设置为多用户
go
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐