手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

dbf表格损坏如何修复

时间:2024-10-17 08:29:59

  首 先 介 绍 一 下Foxpro 数 据 库.DBF 的 文 件 结 构:   Foxpro 数 据 库*.DBF 的 文 件 结 构 由 头 记 录 和 剞麽苍足数 据 记 录 组 成, 头 记 录 定 义 该DBF 的 结 构 并 包 含 与 该 库 相 关 的 其 它 信 息。 头 记 录 由 文 件 位 置0 字 节 开 始。   数 据 库 头 部 几 个 关 键 字 节 含 义 如 下: ( 注: 库 文 件 中 存 储 整 数 时 低 位 字 节 在 前)   字 节 偏 移 说 明 0库文件的版本类型1-3近更新的日期(YYMMDD)4-7库文件中记录的个数8-9第一条记录的起始位置10-11一条记录的长度(包括删除标记)  赘 述, 可 以 参 考 有 关 部 门 书 籍 或 者 程 序 开 头 注 释 部 分。   在 实 际 工 作 中 发 现, 许 多 情 况 下 数 据 库 错 误 都 是 由 于 记 录 个 数 比 实 际 记 录 个 数 大1 个, 以 至 于 数 据 库 无 法 用 打 开。   主 要 通 过 以 下 两 种 办 法 来 对 数 据 库 进 行 修 复。一、 用Pctools、NU 的Diskedit 等 工 具 软 件 进 行 恢 复:运 行Pctools, 选 中 无 法 打 开 的 数 据 库, 按E 文 件 进 入 编 辑 功 能, 按F1 切 换 显 示 模 式。 按F3 进 行 编 辑, 将 开 始 的 第5 个 字 节 值 减1, 按F5 存 储, 然 后 退 出Pctools, 启 动Foxpro, 发 现 被 破 坏 的 数 据 库 可 以 打 开 使 用 了。   由 于 许 多 操 作 者 并 不 一 定 熟 悉 如 何 使 ? tools, 因 此 我 建 议 大 家 可 以 用 比 较 熟 悉 的Excel 程 序 根 据 下 面 的 步 骤 来 进 行 数 据 库 的 恢 复。二、 用Excel 进 行 恢 复。启 动Excel, 选 择" 打 开" 按 钮, 出 现 打 开 对 话 框, 在 打 开 文 件 类 型 中 选 择Dbase/Foxpro(*.DBF) 文 件 类 型, 再 选 中 被 破 坏 的 数 据 库 打 开, 这 时 不 要 做 更 改, 只 选 择" 保 存" 按 钮, 会 出 现" 另 存 为" 对 话 框, 仍 选 择 以 原 来 文 件 名 保 存, 会 提 示" 文 件 已 经 存 在, 是 否 替 换 已 有 文 件 ?", 选 择" 是"。 然 后 选 择" 文 件" 菜 单 上 的" 关 闭", 会 出 现 提 示" 数 据 库 文 件 不 是Excel 格 式, 要 保 留 修 改 吗 ?要 保 存 为Excel 格 式, 单 击 是, 然 后 在 保 存 类 型 下 拉 列 表 框 选Excel 工 作 簿; 要 用 现 有 格 式 保 存 并 替 换 原 来 的 文 件, 单 击 是, 然 后 单 击 保 存; 要 在 关 闭 文 件 时 维 持 现 有 格 式 并 不 作 保 存, 单 击 否。"   由 于 我 们 并 没 有 对 数 据 库 的 记 录 进 行 改 动, 只 是 为 了 恢 复 数 据 库, 所 以 选 择 最 后 一 项" 在 关 闭 文 件 时 维 持 现 有 格 式 并 不 作 保 存", 因 此 单 击" 否", 退 出Excel。启 动Foxpro, 再 次 打 开 数 据 库 文 件, 发 现 数 据 库 文 件 已 可 以 被 打 开 了, 但 是 观 察 数 据 库 的 结 构, 会 发 现 数 据 库 结 构 中 的 索 引 不 见 了, 不 过 数 据 库 的 索 引 文 件 还 存 在。 我 们 只 需 要 给 数 据 库Add 索 引, 并 选 择 原 来 的 索 引 文 件Open 即 可。 添 加 索 引 文 件 后 退 出 数 据 库 结 构 设 置, 并 对 数 据 库 重 新 索 引 一 下, 就 可 以 继 续 使 用 原 来 被 破 坏 的 数 据 库 了

© 手抄报圈