使SQL视图可编辑

问题描述:

我已经使这个SQL视图结合一些表,它的工作原理,但它不可编辑(我不能插入,删除,编辑)数据直接在它,但只有当我这样做在初始表格中,是否有任何方法可以直接在视图中执行相同的操作(编辑数据)?使SQL视图可编辑

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; 
+1

用你正在使用的数据库标记你的问题。但我并不乐观。 –

+1

您是否使用SQL Server? MySQL的?甲骨文? – STLDeveloper

+0

我使用xampp!所以我认为这是SQL。 –

在MySQL中,你不能更新有“LEFT 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以参考可更新视图中允许的内容。

+0

非常感谢!这工作!不幸的是,我选择左连接的原因是因为某些列应该始终为空,并且这不能用Join语句完成,因此我可以使用其他类似完全连接的东西吗? –

+0

您可能需要更改上述问题,以包含您想要实现的更多细节。为什么一些列总是空的? –

+0

好的,因为这个问题得到了回答,我不会改变它,因为它可以用于其他人,但我要用可更新的视图提出一个新的问题,保持null值与我的确切项目,让你知道! –