如何将整个 Access 数据库导出到 SQL Server? [关闭]
Posted
技术标签:
【中文标题】如何将整个 Access 数据库导出到 SQL Server? [关闭]【英文标题】:How to export an entire Access database to SQL Server? [closed] 【发布时间】:2009-08-20 16:54:11 【问题描述】:我刚刚有了一个可爱的 Access 数据库,所以我要做的第一件事就是将它转移到一个普通的数据库管理系统 (sqlexpress),但是我发现的 only solution 听起来很疯狂。
某处不是有“export database to .sql”按钮吗?我有大约 50 个表,并且此导出可能运行不止一次,所以如果我不必手动导出所有表,那就太好了。生成一个 .sql 文件(包含表创建和插入)也很棒,因为它可以让我将其置于版本控制之下。
我想如果不可能做这样简单的事情,我会很感激任何做类似事情的指针。
【问题讨论】:
【参考方案1】:您是否有不想使用 Management Studio 并将 Microsoft Access 指定为导入数据操作的数据源的原因? (数据库->任务->导入,Microsoft Access作为数据源,mdb文件作为参数)。或者是否有理由必须在 Microsoft Access 中完成?
【讨论】:
没有理由,除了我不知道有这样一个选项可用:)【参考方案2】:有一个来自 SQL Server 组的工具 - SQL Server Migration Assistant for Access (SSMA Access) 有 cmets 表示它比 Access 中包含的升迁向导更好。
【讨论】:
我是 SSMA for Access 4.2 的粉丝,最近看到了一个新版本的公告。 我现在已经在几个数据库上使用了它,这很容易。 链接已失效,重定向到 SQL Server 2012 的页面。 链接已更新并再次激活。 它们现在似乎达到了 6.x 版。它似乎工作得很好。谢谢。特别是因为 SSMS 导入选项似乎不允许我将 .accdb 文件从 Access 2013 导入 SQL2008 express 数据库。【参考方案3】:一种将 Jet/ACE 表升级到任何 ODBC 可访问的数据库引擎的快捷方式:
为您的数据库创建一个 ODBC DSN。
在 Access 中,选择一个表,然后从文件菜单中选择导出。选择 ODBC 作为类型,然后选择您的 DSN。
这将使用您的 ODBC 驱动程序指示与 Jet/ACE 的数据类型最兼容的数据类型导出表及其数据。它不一定会猜对,这就是您可能不会使用 SQL Server 执行此操作的原因(有一些工具可以更好地进行翻译)。但是对于非 SQL Server 数据库,这可能是一个很好的起点。
【讨论】:
这可能不会做索引或关系。 这不是他试图避免的相同解决方案吗? (请参阅仅解决方案链接)。不知道为什么他觉得这会如此疯狂。以上是关于如何将整个 Access 数据库导出到 SQL Server? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
将 MS SQL Server 查询结果导出到 MS Access
使用 VBA 或 PowerShell 将所有 MS Access SQL 查询导出到文本文件