我无法以 Access 2007 格式保存复制的数据库

重要:  本文是由机器翻译的,请参阅免责声明。请在 此处 中查找本文的英文版本以便参考。

症状

在Microsoft Office Access 2007,复制在早期版本的 Access 中创建的数据库 (。在新无法保存 MDB 格式)。ACCDB 文件格式。选项灰显 (不可用) 当您尝试使用数据库另存为命令 ( Office 按钮图像 Microsoft Office 按钮,单击,然后单击另存为旁边的箭头)。

原因

.ACCDB 文件格式不支持复制。

解决方案

以 .MDB 文件格式使用复制的数据库

可以继续以 .MDB 文件格式使用复制的数据库。.MDB 文件格式仍支持复制功能。

以 Office Access 2007 文件格式手动重新创建数据库

如果确定使用新文件格式能比复制得到更大的好处,可以用 Office Access 2007 格式创建新数据库,然后手动重新创建复制的数据库。

注意: 此方法适用于任何复制的数据库,但是除非您使用的完整副本与副本集中所有其他副本同步,否则新数据库中不会包含副本中不存在的任何数据和项目。

在开始重新创建数据库之前,应当确保副本中的所有隐藏对象和系统对象可见。这是为了确保当您重新创建副本时可以访问副本中特定于副本的字段。

  1. 打开要转换的副本。必须使用最初用来创建该副本的 Access 版本来打开该副本,才能显示隐藏字段和系统字段。

  2. “工具”菜单上,单击“选项”。将打开“选项”对话框。

  3. “视图”选项卡的“显示”部分中,选择“隐藏对象”“系统对象”。单击“确定”应用新设置并关闭“选项”对话框。

手动重新创建数据库

  1. 创建空数据库并将其打开。

    注意: Access 创建一个新的名为 Table1 的空表。您应当删除此表,方法是:不要进行任何更改,立即关闭此表。右键单击其对象选项卡,然后单击快捷菜单上的“关闭”。 

  2. 外部数据选项卡上的导入组中,单击Access

    将显示“获取外部数据 - Access 数据库”对话框。

  3. 单击“浏览”找到复制的数据库。

  4. 单击包含您要在新数据库中重新创建的数据库对象的复制数据库,然后单击“打开”

  5. “获取外部数据 - Access 数据库”对话框中,单击“将表、查询、窗体、报表、宏和模块导入当前数据库”,然后单击“确定”

  6. 单击要导入到新数据库的数据库对象。如果想要导入所有对象,请在每个选项卡上单击“全选”

    重要事项    此时不要选择任何表。在后面的步骤中,您将重新创建表。

  7. 选择完对象后,单击“确定”将其导入。

    在向导的最后一页上,您可以选择保存导入步骤以便将来使用。为此,请选中“保存导入步骤”复选框,输入相应信息,然后单击“保存导入”

  8. 在 Office Access 2007 中打开复制的数据库。对于复制的数据库中的每个表,创建一个生成表查询,该查询提取旧表中的所有数据,然后使用同样的数据在新数据库中创建表。

    注意: 如果 s_GUID 是主键(其他表中的外键引用它),您应当将 s_GUID 字段包括在新表中。如果 s_GUID 字段不用作主键,则没有必要在新表中保留它。不要将 s_Lineage 和 s_Generation 字段复制到新表中。

    默认情况下,s_GUID、s_Lineage 和 s_Generation 字段处于隐藏状态。要显示这些字段,请使用以下步骤:

    1. 在复制的数据库中,确保所有表已关闭。

    2. 右键单击导航窗格的顶部,然后单击“导航选项”。将打开“导航选项”对话框。

    3. “显示选项”部分中,选择“显示系统对象”,然后单击“确定”

      如何?

      1. 创建查询,选择包含要放入新表中的记录的表。

        如何?

        1. “创建”选项卡上的“其他”组中,单击“查询设计”

        2. “显示表”对话框中,单击列出要处理其数据的表的选项卡。

        3. 双击要添加到查询中的每个对象的名称,然后单击“关闭”

        4. 向设计网格中的“字段”行添加字段。

        5. 若要查看查询结果,请单击“视图”菜单,然后单击“数据表视图”

      2. 在查询设计视图中的“设计”选项卡上,单击“查询类型”组中的“生成表”。将显示“生成表”对话框。

      3. “表名称”框中,输入要创建或替换的表的名称。

      4. 单击“另一数据库”,然后键入要放置新表的数据库的路径,或者单击“浏览”找到该数据库。

      5. 单击“确定”

      6. 设计选项卡的结果组中,单击运行。这将使新表。

        注意: 您创建的新表不会从原始表中继承字段属性或主键设置。

  9. 对于新数据库中的每个表,创建与副本表中所用的索引和主键相同的索引和主键。

    如何?

    1. 在设计视图中打开表。

    2. 在窗口的上部,单击要为其创建索引的字段。

    3. 在窗口的下部,在“索引”属性框中单击,然后单击“有(有重复)”“有(无重复)”

    4. 选择包含主键的字段。

    5. “设计”选项卡上的“工具”组中,单击“主键”

  10. 对于新数据库中的每个表,创建副本表中存在的关系。

    如何?

    当您创建表之间的关系时,相关的字段不需要具有相同的名称。但是,相关的字段必须具有相同数据类型 ,除非主键字段是自动编号字段。您可以仅当两个匹配字段的字段大小属性是相同匹配自动编号字段与数字字段。例如,您可以自动编号字段和数字字段如果匹配字段的两个字段属性是长整型。即使两个匹配字段是数字字段时,他们必须具有相同的字段大小属性设置。

    定义-一对多或一对一关系

    1. 关闭打开的所有表。不能创建或修改打开的表之间的关系。

    2. “数据库工具”选项卡上的“显示/隐藏”组中,单击“关系”

    3. 如果在数据库中尚未定义任何关系,会自动显示“显示表”对话框。

      如果需要添加要关联的表,而“显示表”对话框未显示,可以通过以下方法调用它:在“设计”选项卡上的“显示/隐藏”组中,单击“显示表”按钮。

    4. 双击要关联的表的名称,然后关闭“显示表”对话框。若要创建表与其自身的关系,请将该表添加两次。

    5. 将一个表中要关联的字段拖动到另一个表中的相关字段。

      若要拖动多个字段,请按 Ctrl 键,单击每个字段,然后拖动这些字段。

      在大多数情况下,应将主键字段(以加粗文本显示)从一个表拖动到另一个表中称为外键的类似字段(通常具有相同的名称)。

    6. 将显示“编辑关系”对话框。检查两列中显示的字段名,以确保它们正确。如果需要,可以更改它们。

      根据需要设置关系选项。

    7. 单击“创建”按钮创建关系。

    8. 对于要关联的每对表,重复步骤 4 到 7。

      当您关闭“关系”窗口时,Microsoft Access 会询问您是否要保存布局。无论是否保存布局,您创建的关系都会保存在数据库中。

    定义多对多关系

    1. 创建两个的表,它们将具有多对多关系。

    2. 创建第三个表(称为联接表),然后向联接表添加新字段(这些新字段具有与其他两个表中的每一个表中的主键字段相同的定义)。在联接表中,主键字段的作用与外键相同。您可以向联接表添加其他字段,就像可以向任何其他表添加字段一样。

    3. 在联接表中,将主键设置为包括其他两个表中的主键字段。例如,在“订单明细”联接表中,主键字段应当由“订单ID”和“产品ID”字段组成。

      如何?

      1. 在设计视图中打开表。

      2. 选择要定义为主键的字段。

        若要选择一个字段,请单击所需字段的行选择器。

        若要选择多个字段,请按住 Ctrl 键,然后单击每个字段的行选择器。

      3. “设计”选项卡上的“工具”组中,单击“主键”

        注意: 如果希望多字段主键中的字段次序与这些字段在该表中的次序不同,请单击“显示/隐藏”组中的“索引”按钮,以显示索引窗口,然后对名为“主键”的索引重新排序字段名。

    4. 定义两个主表的每个联接表之间一对多关系 。

  11. 保存新数据库。

注意: 机器翻译免责声明:本文是由无人工介入的计算机系统翻译的。Microsoft 提供机器翻译是为了帮助非英语国家/地区用户方便阅读有关 Microsoft 产品、服务和技术的内容。由于机器翻译的原因,本文可能包含词汇、语法或文法方面的错误。

扩展你的技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×