我正在使用 ADO 构建一个带有 MySQL 后端的 MS Access 2010 应用程序。到目前为止,我已经成功地将我的 ADO 记录集绑定(bind)和更新到表单。但是,我刚刚创建了第一个查询,其中包含两个带有 INNER JOIN 的表,当从两个表返回字段时,我无法更新返回的记录集。这是我能够成功绑定(bind)和更新的第一个查询。
SELECT table_A.a, table_A.b
FROM table_A INNER JOIN table_B ON table_B.c = table_A.c;
但是,当我从 table_B 添加一个字段时,记录集不能再通过绑定(bind)表单更新。新的 MySQL 语句如下所示。
SELECT table_A.a, table_A.b, table_B.a
FROM table_A INNER JOIN table_B ON table_B.c = table_A.c;
我已经阅读了论坛,我的查询似乎没有遇到阻止记录集更新的常见问题(即缺少主键、聚合函数、SELECT DISTINCT 等)。一些论坛建议我的问题可能与记录集之间的歧义有关,但我无法确认这一点,看起来这应该有效。非常感谢任何帮助。
最佳答案
试试这个:
SELECT table_A.a, table_A.b, CONCAT(table_B.a, '') FROM table_A LEFT JOIN table_B ON table_B.c = table_A.c;
关于mysql - 使用 ADO Access 2010/MySQL 后端 - 查询记录集不可更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13734041/