Access 2013 - 无法打开使用以前版本的应用程序创建的数据库

时间:2014-06-09 08:41:39

标签: ms-access ms-access-2013

我创建了一个超过10年的Access数据库。

我有非常重要的数据&我认为它可以在Access 2007或更早版本中打开。目前我在我的桌面上安装了Access 2013并使用此版本打开文件导致错误"无法打开使用以前版本的应用程序创建的数据库"

这个问题的解决方案是什么?我可以在哪里下载早期版本的MS Access吗?

13 个答案:

答案 0 :(得分:15)

我刚刚使用Excel 2016打开Access 2003表。

  1. 打开新工作表
  2. 转到数据标签
  3. 点击“来自访问”菜单项
  4. 选择数据库的.mdb文件
  5. 在打开的“数据链接属性”框中,切换到“提供商”标签
  6. 选择“Microsoft Jet 4.0 OLE DB提供程序”
  7. 点击下一步
  8. 重新选择数据库的.mdb文件(更改提供程序时会忘记它)
  9. 点击确定
  10. 从显示的“选择表格”对话框中,选择要导入的表格。

答案 1 :(得分:4)

如另一个答案中所述,Microsoft的官方消息是在Access 2003中打开Access 97文件并将其升级为更新的文件格式。不幸的是,从现在开始,很多人都难以获得Access 2003的合法副本(或Access 2013之前的任何其他版本,或者最新版本的任何版本)。

在这种情况下,可能的解决方法是

  • 安装32位版本的SQL Server Express Edition,然后
  • 让SQL Server导入实用程序使用Jet * ODBC将表导入SQL Server。

我刚尝试使用32位版本的SQL Server 2008 R2 Express Edition,它对我有用。 Access 2013坚决拒绝使用 任何 来处理Access 97文件,但SQL Server无需投诉地导入表格。

此时,您可以将表从SQL Server导入Access 2013数据库。或者,如果您的目标只是从Access 97文件中获取数据,那么您可以继续在SQL Server中使用它,或者将其移动到其他平台或其他任何平台。

* 重要:需要使用较旧的Jet ODBC驱动程序完成导入...

Microsoft Access Driver (*.mdb)

...随Windows一起提供,但仅适用于32位应用程序。 Access 2013版本的较新Access数据库引擎(" ACE")ODBC驱动程序...

Microsoft Access Driver (*.mdb, *.accdb)

也拒绝读取Access 97文件(问题中引用了相同的错误消息)。

答案 2 :(得分:2)

非编程答案:下载并安装较旧版本的Access数据库引擎(例如,2010年或2007年,而不是2013年)。打开Excel,导航到功能区上的“数据”选项卡,然后单击“从访问”。将数据导入Excel,然后导出到accdb文件或对其执行任何操作。注意!打开Access 2013将触发重新安装2013引擎,因此请保留2007/2010安装.exe。

编程答案:安装了旧版本的Access数据库引擎后,您可以在多个编程环境(C#,VBA,VBScript等)中使用OLEDB连接来读/写和移动Access数据。 Gord Thompson的回答还提出了跳转到SQL服务器并返回的选项。

See This post for a similar problem using an OLEDB connection

Connectionstrings.com is a great resource

See this post for how to setup an OLEDB connection using C#

答案 3 :(得分:2)

您可以使用http://www.alexnolan.net/software/mdb_viewer_plus.htm中的MDB Viewer Plus查看或编辑旧版本数据库

答案 4 :(得分:1)

您可以执行所有这些操作,但基本问题将与Windows文件的Windows更新不兼容。最终你会再次遇到问题。 .ocx和.dll文件将被破坏和替换:您的数据库将无法应对新版本,它将无法构建或意外故障。

答案 5 :(得分:1)

如果您只是想从mdb中包含的表中提取数据,请使用Excel和ODBC(DATA选项卡...获取外部数据...来自其他来源...来自数据连接向导...其他/高级... Microsoft Jet XX OLE DB提供程序...选择你的数据库...选择你的表和瞧!数据导入。然后只需保存工作簿,然后可以链接或导入到更新版本的访问以构建新数据库。

答案 6 :(得分:1)

安装 Microsoft 2007 Access Runtime

来自https://www.microsoft.com/en-US/download/details.aspx?id=4438

答案 7 :(得分:1)

Google云端硬盘具有打开MDB文件的扩展程序。

enter image description here

我不确定BLOB的效果如何,因为我无法显示我的图像,但所有文字都出现了。

答案 8 :(得分:0)

对于'97数据库......

  1. 在Access 2003中打开Access 97数据库。
  2. 在“工具”菜单上,单击“数据库实用工具”,单击“转换数据库”, 然后单击“访问2002-2003文件格式”。
  3. 输入数据库的名称,然后单击“保存”。
  4. 退出Access 2003。
  5. 在Access 2013中打开数据库。
  6. 在“文件”选项卡上,单击“另存为”,选择“访问数据库(* .accdb)”, 然后单击“另存为”。在“另存为”对话框中,单击“保存”。
  7. 所有其他版本:

    要将Access 2000或Access 2002 - 2003数据库(.mdb)转换为.accdb文件格式,必须先使用Access 2007,Access 2010或Access 2013打开数据库,然后将其保存在。 accdb文件格式。

    1. 单击“文件”,然后单击“打开”。
    2. 单击您的Access 2000或Access 2002 - 2003数据库(.mdb) 想转换。

      注意如果出现“数据库增强”对话框,则数据库使用的文件格式早于Access 2000.要继续,请参阅“将Access 97数据库转换为.accdb格式”一节。

    3. 单击“文件”,单击“另存为”,然后单击“将数据库另存为”。

    4. 选择“访问”文件类型,然后单击“另存为”。

    5. 如果在单击“另存为”时打开了任何数据库对象,则Access会在创建副本之前提示您关闭它们。单击是以使Access关闭对象,或单击否以取消整个过程。如果需要,Access还会提示您保存所有更改。

      1. 在“另存为”对话框中,在“文件名”框中键入文件名, 然后单击“保存”。
      2. Access创建数据库的副本,然后打开副本。 Access会自动关闭原始数据库。

        MS Office Documentation

        开始

答案 9 :(得分:0)

不,它仅适用于Access 2013,仅适用于2007/2010。在Access 2013中无法将MDB真正转换为ACCDB。

答案 10 :(得分:0)

如果您只需要转储数据,可以使用这个聪明的脚本 http://youaccess.sourceforge.net。如果您在linux / wine下 你可以尝试my procedure

答案 11 :(得分:0)

最佳解决方案是在升级到较新版本的Access之前转换现有数据库。当即将安装升级时,微软肯定会警告用户这个问题。

答案 12 :(得分:0)

要将数据转换为MySQL数据库,您可以使用Bullzip Access to MySQL程序。它免费且易于使用。

http://www.bullzip.com/products/a2m/info.php