从现有的 MS Access 表自动生成 SQL
Posted
技术标签:
【中文标题】从现有的 MS Access 表自动生成 SQL【英文标题】:Automatically Generate SQL from existing MS Access table 【发布时间】:2010-10-20 00:13:40 【问题描述】:我刚刚通过使用 MS Access 设计了一个大型数据库。现在我对设计感到满意,我需要能够从代码生成相同的数据库(表、关系等)。
与其手写 SQL CREATE 语句(这将是一个冗长、乏味且容易出错的过程),我想知道是否有捷径。我似乎从我对 mysql 的有限接触中回忆起我能够将整个数据库导出为 SQL 语句,然后可以运行该语句以重新生成该数据库。
您知道在 MS Access 中通过 GUI 或以编程方式执行此操作的方法吗?
【问题讨论】:
之前在***.com/questions/698839/…写过一些笔记 【参考方案1】:我刚刚发现并试用了这个工具:jet-tool。它似乎适用于 Access 2010。
【讨论】:
需要 2003 年的访问数据库 (mdb) 而不是 2016 年的 (accdb) 看起来它确实支持 mdb 格式,至少在上一个版本中是这样。【参考方案2】:您可以免费试用 30 天(然后是 30 美元)DBWScript,看起来就像您要求的那样,虽然不是在本机 Access GUI 中或以编程方式
【讨论】:
【参考方案3】:快速、肮脏、简单、完全合法的方法就是复制 .mdb 文件。如果需要,清空数据 - 但是,通常有一些静态表可以方便地填充。
【讨论】:
+1 - 呵呵 - 没有真正考虑到这一点。有趣的是,最简单的解决方案通常是您忽略的解决方案。不幸的是,我们的产品可能会作为独立的可执行文件发布,因此在这种情况下可能不合理。虽然我猜我们可以以某种方式将二进制数据嵌入到 exe...【参考方案4】:我使用名为 MDB Viewer Plus (http://www.alexnolan.net/software/mdb_viewer_plus.htm) 的免费实用程序。 启动它,打开你的数据库,然后选择你的表。 在顶部菜单中,选择“表 > 生成 SQL - CREATE”。
【讨论】:
这对我很有效,谢谢。附带说明一下,由于某种原因,您无法直接从 Alex Nolan 的网站下载 MDB Viewer Plus。它可在多个公共软件档案中找到。 坏消息。我下载了 MDB Viewer Plus 2.63 版,但缺少“表 > 生成 SQL - CREATE”选项。 您可以在此处找到 v.2.52:s000.tinyupload.com/index.php?file_id=00286856232743084617。此版本仍有导出选项。【参考方案5】:我不知道你的开发机器上有什么工具,所以这可能有用也可能没用。
您可以使用Upsizing Wizard 轻松地将您的 Access 数据库传输到 Microsoft SQL Server。
SQL Server Express 版免费提供 > here.
您还想获得免费的Management Studio Express。
使用这些免费的基于图形的工具,您可以轻松生成 SQL 语句来重新创建数据库。您将拥有您正在寻找的 Create 语句,它们将被放置在一个文本文件中。
【讨论】:
【参考方案6】:Bullzip 对此非常擅长。很简单。以bullzip Access to MySQL 为例
可以将任何表导出到 SQL 或自动迁移。
Access to MySQL 是一个将 Microsoft Access 数据库转换为 MySQL 的小程序。
向导界面。 将数据直接从一台服务器传输到另一台服务器。 创建转储文件。 选择要转移的表。 选择要转移的字段。 传输受密码保护的数据库。 支持共享安全和用户级安全。 可选的索引传输。 可选择传输记录。 可选传输字段定义中的默认值。 识别和传输自动编号字段类型。 命令行界面。 易于安装、卸载和升级。
【讨论】:
【参考方案7】:您在 MySQL 中提到的是 sql 转储。非常有用的功能。如果你想将数据库迁移到 mysql,这里有一篇很有帮助的文章。
http://www.kitebird.com/articles/access-migrate.html#TOC_4
【讨论】:
【参考方案8】:多年来,我一直在使用来自 https://fishcodelib.com/Database.htm 的名为 database.net 的工具 我通常在客户的站点上将它用作 SSMS 的可移植版本(drop and run),但它可以处理多种 RDBMS,包括 Access。 连接到您的 mdb/accdb,右键单击任何表,选择 SCRIPT AS,创建,然后您就完成了。 如果您右键单击表格标题,您可以选择多个表格来生成,但我认为这是付费版本的一个功能。 我与他们不熟,只是一个快乐的客户。
【讨论】:
【参考方案9】:我找到了一个简单的方法:
Export-> ODBC Database
然后在那里检索 SQL 表单(例如通过 postgres 上的 pgadmin)
【讨论】:
【参考方案10】:比较他们 http://home.gci.net/~mike-noel/CompareEM-LITE/CompareEM.htm 免费版创建 VBA,而 10 美元的专业版为您提供 DDL 语句。
【讨论】:
以上是关于从现有的 MS Access 表自动生成 SQL的主要内容,如果未能解决你的问题,请参考以下文章
从现有的 id_token 获取 Auth0 access_token