Excel 和 MySQL:如何创建与 MySQL 的连接,接收 excel 文件的用户无需进行任何配置

Excel 和 MySQL:如何创建与 MySQL 的连接,接收 excel 文件的用户无需进行任何配置

这是我的第一个问题,我会尽量不让自己太菜鸟。

我有一个 MySQL 数据库,其中在远程服务器上有几个表,都是常见的东西。

我有很多用户,比如说 50 到 400 个,他们想通过 Excel 中的视图访问数据库。我首先会在 select 子句中定义这些视图。

我已经创建了 ODBC 连接,它运行良好……仅在我的笔记本电脑上!我在 Excel 中从 mySQL DB 中选择了子句。当我将文档发送给任何人时,他们都会被拒绝,因为组件未定义。

我的用户无法承担完成整个组件设置之后再使用这些文件的费用。

我正在寻找一种解决方法,让我的用户只需打开 excel 文件并点击刷新全部即可获取他们的数据

我们都使用Excel 2010。

感谢 Pierre-Louis 的帮助

答案1

我过去解决同样问题的方法是利用友好的网络服务。

如果您可以访问网络上的 Web 服务器,请使用您最喜欢的 Web 脚本语言(PHP、PERL、Python、JavaScript/Node.js)设置一个简单的查询服务,该服务返回数据的表格视图。

这样,您就不再需要在每台 PC 上建立 ODBC 连接。相反,您可以执行嵌入在电子表格本身中的 Web 查询。Web 查询还可以包含基于其他单元格的参数,因此可以轻松为运行电子表格的每个人创建个性化查询。


要创建这样的 Web 服务,您有几个选择。您可以付费在 Internet 上托管网站。即使每年只花几美元,您也能获得一个 PHP 驱动的 Web 主机。在这种情况下,请跳至步骤 4。

或者,如果无法将数据暴露在互联网上,则需要自行设置。以下是基本设置:

1) 您需要一个 Web 服务器。如果您的网络上有一台 PC,那么设置一个 Web 服务器非常容易 - 有很多帮助网站可以做到这一点。在 Ubuntu 或 Debian Linux 上使用 Apache,因为这是最简单的设置方式,并且社区支持最好。或者,使用 IIS 设置一个简单的 Windows 服务器。

2) 您需要一种脚本语言。建议使用 PHP 作为最简单的入口点,并且支持得很好。同样,有很多帮助。如果使用 Ubuntu 或 Debian,Apache 和 PHP 位于软件存储库中:apt-get install apache2 php5应该可以完成必要的操作。在这里,我假设 MySQL 已经在某个地方设置好了。

3) 您需要建立一个 PHP 驱动的网站。同样,网上有很多帮助,我不会在这里重复所有这些

在继续之前,先简单说一下。如果您愿意,并且您的需求很简单,那么您可以在一个工作站上完成所有这些操作。请查看易PHP它提供了一种非常简单的方式来设置您需要的一切。它是为开发电脑设计的,但只要您的安全需求简单,它就没问题。要获取类似的替代方案,请搜索“WAMP”。

4) 现在您需要使用 PHP 来查询 MySQL 表。虽然您可以自己编写,但这意味着要学习 PHP!不是那么难,但肯定很耗时。所以我建议使用库。查看以下之一:哒哒比克或者PHPmy编辑。其中任何一个都可用于构建数据库表的简单接口,并且适合此任务。我曾使用 PHPmyEdit 为一个非常大的公共机构构建了一个国家系统注册应用程序的临时接口。

5) 您应该希望最终得到一个网页,该网页返回一个 HTML 表格,其中包含电子表格所需的数据。现在,在模板电子表格中,插入指向该页面的 Web 查询,选择结果表。查询嵌入在电子表格中,任何有权访问该网页的人现在都可以使用这些数据。

最后,如果您需要允许过滤,请调整网页以允许传递查询参数,您需要查看您选择的库的文档,但这并不难解决。查询参数可以添加到电子表格中的网络查询中。

答案2

创建 Excel 文件的副本并发送给用户。但请记住,如果 Excel 文档中有 select 语句,则它是可编辑的,并且密码信息是纯文本。

相关内容