使用 MS Access 作为 MySQL 数据库的前端

Posted

技术标签:

【中文标题】使用 MS Access 作为 MySQL 数据库的前端【英文标题】:Using MS Access as a front-end to MySQL db 【发布时间】:2017-03-21 05:46:01 【问题描述】:

我正在为我的 android 应用程序使用 mysql DB。我已经在我的 Ubuntu LAMP 服务器上安装了 phpmyadmin,并使用它来访问我的数据库。是否有可能使用 MS access 2010 访问数据库,因为我需要定期对我的数据库进行修改

【问题讨论】:

您是否要求将 php 与 ms 访问连接?如果是这样,您可以尝试***.com/questions/19807081/… 并删除当前问题 实际上我想每天更新我的数据库。目前我正在使用 phpmyadmin .. 对于更新,我必须将其导出到 Excel 进行更改并再次导入,或者编写更新查询并每天执行。我发现使用 ms access 2010 来完成这项任务很容易,因为我可以直接在 MS Access 中完成并保存它。但我不知道我是否可以在 MS Access 中打开 mysql db。我已经尝试打开一个 oracle 数据库,但我不确定 mysql。希望我在这里阐明了我的观点 使用 phpmyadmin 也可以直接更新。你为什么不在php中设计一个简单的屏幕来更新然后自己每天更新而不是直接处理到DB。 这个人想做的正是我想做的——将服务器上的 MySQL 数据库连接到本地计算机上运行的 Access 前端。有很多答案,但没有一个可以回答他的问题。似乎所有的答案都试图告诉他做一些不同于他所要求的事情。当我问同样的问题(2.5 年后)时,同样的事情发生了——没有人给出直接的答案。请问,有人能告诉我们如何将 MS Access 连接到服务器上的 MySQL 数据库吗?谢谢。 【参考方案1】:

如果目标是更改数据而不是结构,则使用 MS 访问是一个很好的解决方案,因为您可以通过 litlle setup 工作非常有效地编辑链接表中的任何内容。

为此,首先您需要下载并安装MySQL ODBC driver。

为了避免出现问题,我建议您安装 32 位驱动程序,即使您使用的是 64 位系统。 32 位可以正常工作,而 64 位并非总是如此。

安装后,打开 ODBC control panel 并添加一个指向您的 MySQL 数据库的条目

然后在 Access 中你可以add linked tables 使用这个 ODBC 条目

表链接后,它们的行为就像是 MS 访问表一样,您可以打开它们并编辑数据等等。

【讨论】:

感谢您的步骤将尝试并让您知道结果! 您好,我已经尝试过您的解决方案,但在设置 ODBC 时出现错误。无法为主机打开命名管道,它也无法在 TCP/IP 连接模式下工作。你能建议吗 您应该添加 User DSN 而不是 System DSN。那是你试过的吗?如果你 ping 你的 MySQL 服务器地址会发生什么? 是的,我将其添加为用户 DSN。如果我 ping 我的服务器地址,我会收到“请求超时”。但是我的服务器处于活动状态,我可以使用 phpmyadmin 和我的应用程序访问它 connector-odbc-usagenotes-apptips-microsoft-access 也是需要的!【参考方案2】:

您可以使用 Microsoft Access 作为 MySQL 数据库的前端。 参考:MySQL Documentation

但是对于您的情况,直接访问数据库是错误的。我建议您最好有一个带有 php 的视图页面,以使用适当的所需验证更新 DB

【讨论】:

这不仅不是答案而是评论,而且完全具有误导性。 我对php了解不多。无论如何都会对这一点进行一些分析。感谢您的回答。 不仅在 php 中,您还可以在已知的前端软件中尝试。直接使用 db 更新总是有风险的。 在 PHP 中这样做需要编写一个完整的接口。为此目的,这在左手完全是愚蠢的,右手不是他问题的“答案”。他特意在 MS Access 中寻求帮助,因为他明白这将节省他很多时间,而且我确认这可能是他必须做的最好的方法。 @PradeepKumarPrabaharan:也许你想到了一个外部互联网网络服务器,将 MySQL 公开可能很危险(如果你不知道如何保护),但 OP 似乎使用本地 linux 服务器。如果它是在线的,您应该建议使用 REST 之类的 API 解决方案。【参考方案3】:

Thomas G 的回答很好地描述了我们需要做什么,甚至提供了一些很好的链接。

我们现在需要的是对如何完成 Thomas G 所描述的所有步骤的良好的分步描述。

我一直在寻找这个很长时间,但仍然没有运气。不过,我可能正在寻找答案,如果我找到了,我会回到这里发布。

【讨论】:

如果您阅读了 Thomas 提供的 MySQL 连接器文档的链接,您会找到 connector-odbc-usagenotes-apptips-microsoft-access。顺便说一句,这不是答案!应该是评论或新问题! 我阅读了 Thomas 提供的链接,但它没有回答问题。您提供的链接仅讨论“改进链接......”它没有讨论如何建立链接,这是我的主要问题。现在已经搜索了几天的帮助源,我仍然无法让 MySQL ODBC 驱动程序出现在 MS Access 添加 ODBC 数据源列表中。仍然追究下去,在这里批评别人无济于事。 更多步骤?远程桌面连接 ;-) 也许您使用的是 Office x64?如果不是什么不清楚?当然,您必须阅读 Using Access as FE 中的链接文档。 您错过了告诉驱动程序未显示在 ODBC-Admin 中(在评论末尾隐藏)。我需要知道我们安装了什么驱动程序(版本和位数),哪个 Office(版本和位数)以及 MySQL-Server(版本,位数应该是 x64)。很可能你安装了错误的驱动程序(应该和office一样) 找到你以前的问题***.com/questions/57401208/…表明需要在聊天chat.***.com/rooms/197759/…中进行讨论

以上是关于使用 MS Access 作为 MySQL 数据库的前端的主要内容,如果未能解决你的问题,请参考以下文章

拥有一个 MS Access 数据库作为 MySQL 的实时供稿

从 MS Access VBA 通过 ODBC 进行 MySQL 查询:ADODB 异步执行不起作用

对 MySQL 使用 MVC 应用程序和 MS Access 时记录被覆盖

需要连接到 MS Access 数据库并每 30 分钟自动将它们填充到 mysql 表中

如何使用 MYSQL 查询访问 Ms-Access 数据库

将 MySQL 转换为 MS Access