有谁知道在vfp中,"内部一致性错误"是怎么回

有谁知道在vfp中,"内部一致性错误"是怎么回,第1张

生了内在的数据库错误

数据库损坏。

尝试用 VALIDATE DATABASE 来诊断和修复问题。

数据库容器索引(.dcx)损坏或与数据库容器文件(.dbc)不同步,通常是非正常退出系统的结果。

通过关闭数据库、删除索引文件 dbc_name.DCX 并重新打开数据库来重建索引。

第一步:在数据库“属性”选项下,选择“选项”,选择“限制访问”,值改为“SINGLE_USER”

第二步:执行SQL

DBCC CHECKDB (数据库名称如mytable, repair_allow_data_loss) with NO_INFOMSGS

第三步:执行SQL

DBCC CHECKDB

如果还有错误,继续执行第二步

第四步:在数据库“属性”选项下,选择“选项”,选择“限制访问”,值改为“MUTI_USER”

进入查询分析器中,

选择所使用的数据库,并检查该数据库是否存在错误。

可以看到该数据库存在4个分配错误和1个一致性错误。 (为你实际要处理 的数据库.)

发现错误后要开始修复,所使用语句下:sp_dboption 'DbName', 'single user', 'true'--把数据库置为单用户模式DBCC checkdb('DbName',REPAIR_ALLOW_DATA_LOSS)--在允许数据丢失情况下修复数据库。 如果DBCC checkdb('DbName',REPAIR_A LLOW_DATA_LOSS)语句执行一次不行,可以在多执行几次直到没有再提示数据库有错误为止。

检查没有错误后,把数据库重新设置为多用户模式sp_dboption 'local', 'single user', 'false'--设置为多用户模式 这样这个数据库的错误修复就完成了 。然后停止掉SQLSERVER,重新启动服务器就可以.这种方法对于一般出现问题可以不用安装企业管理器。直接在服务器用OSQL –E 进入数据库。然后通过上面两条命令来修复数据库。这样速度比较快。

sp_dboption 'czbt2', 'single user', true

use czbt2

DBCC checktable('hnxc.czbt_btdj',REPAIR_ALLOW_DATA_LOSS)

select * from hnxc.czbt_btdj

好了后再:sp_dboption 'czbt2', 'single user', false把单用户改回来

我尽力了


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6668232.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存