mysql - 在 Access 文件中重新链接 mySQL 数据库

标签 mysql database ms-access

我有一个 Access 文件,它作为 mySQL 数据库的前端服务器。在 Access 文件中,我有几个表和查询。问题是我将 mySQL 数据库从一台主机更改到另一台主机,而另一台主机不存在。

我想要做的是将此 Access 文件中的表/查询重新链接到数据库而不是旧数据库。我删除了计算机上的旧 ODBC 记录,并创建了新记录。但发生的情况是,每次我尝试 Access 其中一个查询时,它都会显示 ODBC 连接属性,并且我必须将连接主机名从旧连接主机名更改为新连接主机名。我相信旧信息存储在文件中的某个位置,因此任何有关存储位置或每当我必须通过 VBA 代码手动执行此操作的信息都将不胜感激。

最佳答案

有两个可能的位置可以存储信息:

  1. 在链接表的连接字符串中。

  2. 在已保存查询的连接字符串中。

您可以通过以下方式找到表的连接字符串:

  ?CurrentDB.TableDefs("MyTable").Connect

...对于已保存的查询:

  ?CurrentDB.QueryDefs("MyQuery").Connect

要更新前者,您应该删除现有的链接表并从头开始重新链接。对于后者,您必须单独编辑每个字符串,或者编写代码来遍历 QueryDefs 集合并使用新值更改和保存 Connect 字符串。

您还可以找到Doug Steele's code for DSN-less connect strings有用。

关于mysql - 在 Access 文件中重新链接 mySQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4716274/

相关文章:

vba - 如何将 rst.FindFirst 与 rst.NoMatch 一起使用?

mysql - 如何在 Datagrip 中创建触发器?

MySQL 错误代码 1452 外键约束

MySQL 常量值索引

java - 由于外键约束,数据库插入失败

vba - 如何以 PDF 格式输出报告,其中名称由字段中的值组成?

mysql - 根据日期从数据库中获取记录

Mysql加入并获取2个值?

php - 数据未按照所选 ID 获取

mysql - MS Access to MySQL Conversion help (Gigantic table)