mysql - 使sql View 可编辑

标签 mysql join view

我已经制作了这个 sql View 来组合一些表并且它可以工作,但是它是不可编辑的(我不能插入,删除,编辑)数据直接在其中,但前提是我这样做所以在初始表中,有没有办法直接在 View 中执行相同的操作(编辑数据)?

Create view table4 as
Select table1.firstname, table1.lastname, table2.bodyweight, table3.bodyfat
From table1
LEFT JOIN table2 ON table1.table1_id = table2.table2_id;
LEFT JOIN table3 ON table1.table1_id = table3.table3_id;

最佳答案

在 MySQL 中,您无法更新具有“LEFT JOIN”的 View ,但是如果您可以将它们转换为“JOIN”,则应该没问题。

Create view table4 as
Select table1.firstname, table1.lastname, table2.bodyweight, table3.bodyfat
From table1
JOIN table2 ON table1.table1_id = table2.table2_id;
JOIN table3 ON table1.table1_id = table3.table3_id;

参见 here以引用可更新 View 中允许的内容。

关于mysql - 使sql View 可编辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46670507/

相关文章:

php - SQLSTATE[23000] : Integrity constraint violation: 1052

mysql计数相关表

mysql - 选择随机行时的 SQL Join 帮助

ios - 将 IB 创建的约束复制到另一个 UIView

javascript - Backbone.js - 在 View 处于事件状态时添加按键事件?

jquery - 如何将json数据传递到codeigniter View 中

mysql - 统计每件售出的产品

mysql - order by desc 未按正确顺序显示

php - 在 PHP 中备份和恢复 MySQL 数据库

mysql - 同一 mysql 查询中的左连接和内连接不起作用