gpt4 book ai didi

mysql - 尽管可更新,但更新 MySQL View 失败

转载 作者:行者123 更新时间:2023-11-30 21:47:15 24 4
gpt4 key购买 nike

此问题可能仅限于某些版本的 Mysql。

从控制台我知道 View 是可更新的:

   mysql> select IS_UPDATABLE from INFORMATION_SCHEMA.VIEWS where TABLE_NAME = 'view_company_users';
+--------------+
| IS_UPDATABLE |
+--------------+
| YES |
+--------------+
1 row in set (0.00 sec)


mysql> UPDATE view_company_users SET company_public_phone = '0407111124' WHERE id=511;
ERROR 1288 (HY000): The target table view_company_users of the UPDATE is not updatable

我从另一台服务器导入了数据库,这不是问题,所以它一定是我的服务器设置 (5.7.21-0ubuntu0.16.04.1) 所特有的

这是发布时适用于 ubuntu 16.04 的最新稳定 mysql 包。

任何人都可以告诉我可能是什么问题,即,为什么它不允许我更新本来可以更新的 View 的行?

根据要求。 View 定义(带编辑):

    CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` VIEW `view_company_users` AS select ....
from ((((`admin_users` `au`
left join ...
left join ...
left join .....
left join .....;

最佳答案

这里的解决方案是使用“INNER JOINS”而不是“LEFT JOINS”,或者安装似乎支持此功能的 MariaDB。

关于mysql - 尽管可更新,但更新 MySQL View 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48879316/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com