0
如何在單個查詢中更新多個表中的多個列?如何更新多個表中的多個列
我試過下面但沒有成功。
update Class c, School s
set c.Status='Absent', s.Status='Absent'
Where c.ID='&ID' and c.ID=s.ID;
任何線索是明顯的。
如何在單個查詢中更新多個表中的多個列?如何更新多個表中的多個列
我試過下面但沒有成功。
update Class c, School s
set c.Status='Absent', s.Status='Absent'
Where c.ID='&ID' and c.ID=s.ID;
任何線索是明顯的。
您不能直接更新Oracle中的多個表。
你也許可以做一個視圖的更新,像這樣:
update (
select c.status class_status, s.status school_status
from Class c, School s
Where c.ID='&ID' and c.ID=s.ID)
set class_status='Absent', school_status='Absent'
甲骨文將只允許這個如果表之間的連接保留鍵 - 即由加入直接生產的每一行映射到源表中的單個行將被更新。我懷疑在這種情況下,School
未被鍵保存,因爲該表中的每行可能與Class
中的多行有關。所以你不能在一個聲明中做到這一點。
甲骨文對模糊關係思維的寬容程度遠低於其他系統。
可能重複的[MySQL,用一個查詢更新多個表](http://stackoverflow.com/questions/4361774/mysql-update-multiple-tables-with-one-query) – ADyson
有很多答案這個如果你搜索,包括我剛纔建議的重複。 – ADyson
您當前的查詢看起來正確。你真的嘗試過運行它嗎? –