将 MySQL 数据库链接到 MS Access 时如何包含关系?

How to include relationships when linking MySQL Database to MS Access?

我在 MySQL 中有一个数据库,其中包含大约 40 个表,其中大部分表之间都有关系。我正在尝试在 MS Access 中使用 CRUD 操作的表单构建一个前端。当我使用 ODBC 连接器将 MySQL 连接到 Access 时,它成功链接了数据库并允许更新从 Access 反映到 MySQL Workbench,反之亦然,但是在 Table 在 Access 的关系视图中,这些关系没有反映出来。

鉴于我的印象是拥有这样的关系是个好主意,我如何才能将这些关系包含在链接过程中?这样的事情是否可能,或者我是否必须在 Access 的关系管理器中手动重新添加这些关系?

这样的图真的很漂亮。当您放弃对数据库使用 Access 时,关系等所有内容现在都由实际的数据库系统管理。因此,Access 中的图表和关系设置不仅被忽略,而且实际上并不重要或改变 MySQL 将如何运作。

我的意思是,如果您有 3 个访问前端(应用程序)都连接到一个 MySQL 系统,会发生什么情况?您现在是否拥有 3 组不同的关系,并且它们的工作方式各不相同?现在谁将成为老板并制定和执行这些规则?

因此,您的所有 table 设计、规则和关系都将由 MySQL 定义、创建和管理。在这种设置中访问只能使用数据,但它与 MySQL 或 Oracle,或 SQL 服务器或您使用 Access 使用数据的任何系统的方式有零说和零。

因为Access只是数据的消费者,所以它与你在亚马逊上浏览书籍时没有更多的关联。您浏览书籍或使用来自此类系统的数据这一事实并不意味着您现在突然要在亚马逊上强制执行关系和规则。

完全相同的概念适用于 Access。在您采用不同的数据库的那一刻,Access 对 table 设计、关系以及关于特定品牌 "x" 数据库系统工作方式的几乎所有其他方面的控制都是零。

因此,任何关系设置等都由服务器系统 100% 处理。此时的访问只能使用数据并且在关系等方面没有发言权。事实上,访问甚至不知道要发送到 MySQL 或 Oracle 或任何系统的具体和特殊命令如何建立和建立这样的关系。

因此,Access 只能为Access 设置关系。但是,您可以自由地构建表单、报告,甚至构建新的查询。查询生成器允许您在多个 table 之间建立和建立关系,但是构建这样的查询从未改变或告诉实际的数据库系统它将如何处理关系,甚至它们将如何设置。

因此,作为此类系统的客户端的 Access 将 100% 尊重此类数据库中设置的关系,而您尝试在 Access 中设置关系 window 将获得零收益。你确实得到了一张漂亮的照片,但仅此而已。因此,请使用给定数据库附带的工具和图表工具 - Access 在这件事上根本没有发言权。