修复SQL数据库MDF表出错解决速达软件不能修复和不能备份帐套图解文档格式.docx

上传人:b****6 文档编号:18713430 上传时间:2022-12-31 格式:DOCX 页数:10 大小:299.84KB
下载 相关 举报
修复SQL数据库MDF表出错解决速达软件不能修复和不能备份帐套图解文档格式.docx_第1页
第1页 / 共10页
修复SQL数据库MDF表出错解决速达软件不能修复和不能备份帐套图解文档格式.docx_第2页
第2页 / 共10页
修复SQL数据库MDF表出错解决速达软件不能修复和不能备份帐套图解文档格式.docx_第3页
第3页 / 共10页
修复SQL数据库MDF表出错解决速达软件不能修复和不能备份帐套图解文档格式.docx_第4页
第4页 / 共10页
修复SQL数据库MDF表出错解决速达软件不能修复和不能备份帐套图解文档格式.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

修复SQL数据库MDF表出错解决速达软件不能修复和不能备份帐套图解文档格式.docx

《修复SQL数据库MDF表出错解决速达软件不能修复和不能备份帐套图解文档格式.docx》由会员分享,可在线阅读,更多相关《修复SQL数据库MDF表出错解决速达软件不能修复和不能备份帐套图解文档格式.docx(10页珍藏版)》请在冰豆网上搜索。

修复SQL数据库MDF表出错解决速达软件不能修复和不能备份帐套图解文档格式.docx

 

运软件行环境:

SQLSERVER2000SP4

速达V5V3.90ERP试用版

一:

不能修复或不能备份出错提示。

1:

不能修复分两种:

A:

不能修复帐套,也不能备份帐套;

B:

不能修复帐套,但能备份帐套。

下图1提示“帐套修复失败:

修复S_SALEDETAIL表时出错。

2:

不能备份只有一种:

既不能修复帐套,也不能备份帐套。

这里示用到的为不能修复帐套,也不能备份帐套这种。

下图2提示“数据据库DBCC检查发现以下错误,不能备份。

表错误:

表“AA_BILLFLOW”,行的键缺少或无。

从上面两图中描述,可以发现数据库中的两表出错:

销售开单明细“S_SALEDETAIL”和底稿表“AA_BILLFLOW”。

经过分析:

发生表出错的主表为:

销售开单明细“S_SALEDETAIL”;

发生表出错的从表为:

底稿表“AA_BILLFLOW”;

发生表出错的辅表为:

系统日志表“AM_SYSLOG”。

第三表修不修复对帐套修复和备份操作几乎没影响。

为更彻底处理出错的表,致远把系统日志表“AM_SYSLOG”也列入要修复SQL数据表中。

二:

如何发现SQL数据库中出错的表。

如何发现SQL数据库中出错的表,致远用底稿表“AA_BILLFLOW”、系统日志表“AM_SYSLOG”和销售开单明细“S_SALEDETAIL”3表同时进行示操作。

用DTS导出,从速达软件“SD0001”数据库导出表到临时数据库“致远”的过程省略。

方法可参阅我的博文

Excel表如何导入SQL数据表中──速达软件操作示_致远_acoffe_新浪博客

这里只介绍从临时数据库“致远”导出到数据库“SD0001”的过程。

利用临时数据库“致远”中未经修复的SQL表导出,如果发现表导出出错,系统会自动提示,“有X个表复制失败”。

用DTS导出,首先创建临时数据库“致远”。

致远习惯用:

“ 

致远”作临时数据库代号。

只填临时数据库“致远”名称,其它均忽略。

临时数据库中致远已导入底稿表“AA_BILLFLOW”、系统日志表“AM_SYSLOG”和销售开单明细“S_SALEDETAIL”3表。

选择“数据源”。

“数据源”为临时数据库“致远”。

3:

选择“导出目的”。

目的数据库为速达“SD31502_SD0001”。

4:

选择“从源数据库复制表”。

5:

选择“源表”。

“源表”为“AA_BILLFLOW”、“AM_SYSLOG”和“S_SALEDETAIL”3表。

6:

提示“有X个表复制失败”。

这里实际提示“有3个表复制失败”。

三:

如何定位表出错的行所在位置。

经过步骤“二”系统已提示DTS导出表“出错”,“有3个表复制失败”。

现在你只要“双击错误行以获得对错误的详细描述”,提示“在目标的行号为X处出错”。

提示表“AA_BILLFLOW”“在目的行号为3359处出错。

不能在对象‘AA_BILLFLOW’中插入重复键。

提示表“AM_SYSLOG”“在目的行号为4445处出错。

不能在对象‘AM_SYSLOG’中插入重复键。

提示表“S_SALEDETAIL”“在目的行号为3318处出错。

不能在对象‘S_SALEDETAIL’中插入重复键。

导出表“AA_BILLFLOW”,保存格式为EXCEL即可,找到“行号为3359”的行,记住图中红色部份:

“BILLID”为“537”,“BILLCODE”为“XSD-2014-12-12-0014”。

下面进行其它操作还要用到“BILLID”和“BILLCODE”。

致远已同时导出3表,见下图。

系统日志表“AM_SYSLOG”和销售开单明细“S_SALEDETAIL”作同样操作,不再提示。

四:

利用临时数据库“致远”,对已找到的“”插入重复键的行进行修复。

进入SQL“企业管理器”--临时数据库“致远”—“表”--“AA_BILLFLOW”,删除表“AA_BILLFLOW”中“BILLID”为“537”的整行。

致远建议在SQL管理器中直接删除表“AA_BILLFLOW”中“BILLID”为“537”的整行。

利用EXCEL表的目的只是为了找到表“AA_BILLFLOW”中“行号为3359”的错误位置。

删除下图SQL表中带黑色的行。

用DTS导入临时数据库“致远”中已修复的表“AA_BILLFLOW”。

如果3已全部修复,就可以合并导入。

步骤同上面“二”,只是步骤“二--4”:

“选择“从源数据库复制表””,改为选择“在SQLSERVER数据库之复制”,再增加选择“创建目的对象”—“包括扩展属性”,省略“二--5”和“二--6”两步,其它操作均相同。

导入“指定表复制”—选择“在SQLSERVER数据库之复制”。

选择“创建目的对象”--选择“包括扩展属性”,下一步继续执行就可以了。

五:

如果你熟悉SQL数据库也可以几表同时导出导入,同时修改。

对不熟悉SQL的速友,致远还是建议你老老实实一表一表进行导出,再进行修复。

如果你选择导出整个数据库,那么与之相关的“出错表”有249,你会看花眼,致远也不建议你这样操作。

上面提到的3表关系到下图中提到的249表,如果修复了关键的3表,剩余的200多表交给SQL来处理,SQL数据库会在帐套修复过程中自动进行修复,不必过于谨慎。

六:

3已修复的表导入结束,重启电脑。

打开速达软件服务器进行“修复”帐套操作,“修复”帐套完成,就可以进行“备份”帐套操作了。

到此,完美修复SQL表出错,一切完好如初,大功告成。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1