第04节:如何修复损坏的数据? 当数据库发生损坏的情况时,就必须修复才能正常使用。一般而言,数据库文件会损坏,总结原因只有**软件使用操作过程中让主机不正常关机**,例如像厂区停电、断电、跳闸,不慎踢掉电脑电源,或是电脑死机强制重启,甚至是因为硬件问题造成电脑停摆等等,都属于电脑不正常关机的情况。总体来说,数据库损坏只有症状轻微的,和症状严重这两种。症状轻微的,可以透过特定的修复过程来还原,我们先来看第一种轻微损坏的修复。 ##重新生成事务日志文件 这个修复方式,适合用在数据库本体文件(SJSOFT.db)完好,但事务日志损坏的情况,在进行这个操作之前,请先将**数据库事务日志文件(SJSOFT.log)**改名或者删除。 ###打开数据库启动程序  ###设置数据库修复参数  ###等待程序运行结束  ###再次打开数据库启动程序  ###新事务日志建立完成 本次弹出的这个窗口,在结束后会最小化到开始任务栏的右下角。至此,新的数据库的事务日志也生成完毕,各位可自行回到首佳文件夹底下看看有无**SJSOFT.log**。  ###查看新的事务日志  ##从事务日志导入数据 这个修复方式,适合用在数据库本体文件(SJSOFT.db)损坏,但事务日志完好的情况,在进行这个操作之前,请先将**数据库本体文件(SJSOFT.db)**改名或者删除。数据库事务日志,其实就是软件从开始使用,直到数据库文件损坏之前的所有新增、修改、删除历程的全记录。 ###事务日志转存指令文档 打开命令提示符,进入首佳文件夹,运行日志转存指令,指令及参数说明:**dbtran -n SQL.SQL SJSOFT.log**。注意!转存后的文档,容量会比原来的**SJSOFT.log**多一倍。 - -n SQL.SQL:指定导出后的文档名称,主文件名可自行定义。因为者这是指令文档,所以一般都会用 .SQL 当后缀名。 - SJSOFT.log:事务日志文件 ####开始转存  ####转存完成  ###找到最近一次备份数据 原有的SJSOFT.db已经损坏,所以无法拿来做任何操作。在这种情况下,只能拿之前备份的SJSOFT.db来当导入数据的载体。找到SJSOFT.db之后,连同SJSOFT.log复制到首佳文件夹覆盖,覆盖之后打开软件。找数据的方式,前面已经做过说明,这里就不再重复。 ###清空重点数据 因为从事务日志转存的指令文档,已经包含了所有数据,所以用之前的备份数据打开软件之后,要先做清零,需要做清零的地方列举如下。 ####进销存资料 配件出库清零,配件进库清零,配件库存清零、入库应付账清零、销售应收账清零,营业外收支清零,配件简拼码清零,仓库名称清零,领料单清零。 ####其他资料 客户档案清零,凭证数据清零,其它收付款清零,保险索赔登记清零,投保登记清零。 ####汽修资料 委托单、结算单清零,结算单应收账清零,车主汇总资料清零,会员基础资料清零,会员卡资料清零,会员入账清零。 ###从指令文档导入数据 这里需要借助软件的数据库升级工具,打开软件升级工具,然后运行转存好的指令文档,剩下的部分按照升级操作步骤进行,直到不再显示指令运行窗口。 