我可以将我的MySQL数据库结构复制到2007之前的MS Access吗?

时间:2011-01-05 16:00:09

标签: mysql ms-access

我想创建我的mysql安装的桌面版本,而无需在我的机器上设置服务器。

我想使用MS Access'查询设计器,这样我就可以生成复杂的查询。

我知道我可以生成一个SQL文件,但我不知道如何从中创建一个MS Access数据库?

3 个答案:

答案 0 :(得分:0)

从MySQL迁移到类似Access的方向正朝着错误的方向发展。

如果你需要一个无服务器的SQL安装或软件包作为你的发行版的一部分(这是很常见的要求,因为管理员不喜欢用户在他们的机器上安装数据库服务器),考虑SQL Server Compact Edition (CE) or SQL Lite 。它们都完全符合SQL标准(与Access不同),并且会使您比Access更糟糕(令人厌恶)。 (我提到Access很糟糕吗?大时间?)

SQL CE是一个.NET程序集,可以与您的应用程序一起在进程中运行,并且非常易于使用。此外,您创建的数据库对象将与完整的SQL Server向上兼容。如果您使用ORM,它也可以非常适用于Entity Framework。

我听说过对SQLite的赞美,但还没有使用它。如果你不在.NET上,这应该是一个很好的方法。

链接:

SQL CE

SQLite

答案 1 :(得分:0)

我不会跳上“Access sucks”的潮流,尽管有时候非常令人沮丧。

最糟糕的情况是,您可以从空白的Access数据库开始(mdb文件,因为您在2007年之前指定了)。打开查询设计器&转到SQL视图。粘贴一个完整的SQL语句(CREATE TABLE...),然后运行它。修复任何不兼容错误,粘贴到下一个(替换第一个),冲洗,重复。请务必按顺序执行此操作,以便在依赖项之前创建任何依赖项“sources”。

可能有批处理可用,但我不知道它是什么。

答案 2 :(得分:0)

我不知道这是否可行,但如果您可以设置DSN指向MySQL服务器,则可以使用FILE |获取外部数据|导入将MySQL表导入空白MDB / ACCDB。这是一次性操作,但我不知道这里还有其他选择。您应该只选择导入表模式而不是模式+数据。您可能必须在结果表中调整数据类型,因为MySQL数据类型不一定直接映射到Jet / ACE数据类型。

然后您可以随时随地携带MDB / ACCDB文件。