我有10個表,我想用相同的值更新所有這些表中的相同字段。更新的條件是一個表是主鍵的字段,在其他表中是外鍵,有些表甚至不是關鍵字。例如:有沒有更好的方法來更新多個表中的相同字段?
TABLEX TABLEY TABLEZ
FIELD1 (PK) FIELD1(FK) FIELD1
FIELD3 FIELD3 FIELD3
我想更新相同FIELD1的所有表中具有相同值的FIELD3。我被告知使用存儲過程使用遊標a for循環來更新表格,並且在調查了一下之後,我已經讀取了這個遊標非常省時。我想知道這是否是最好的方法,或者如果你知道更好的方法。我相當新的SQL。
Thx提前。
如果同一個字段出現在十個不同的表中,也許數據庫設計有問題嗎? – FrankPl
爲什麼不試試觸發器。當你更新第一張表時更新所有其他表以及同時更新所有其他表。 – Harshit
關係數據庫不應該要求這樣做。如果結構已經標準化,數據只能出現在一張表中。如果它已經被解除標準化,比如緩存結果在多個地方,那麼你將不得不發佈10個UPDATE。 – MatBailie