2010-11-03 10 views
5

È possibile aggiornare più tabelle in Oracle con una singola query utilizzando join? In tal caso, qual è la sintassi? Il mio collega ha detto di averlo fatto in MySQL.Aggiornamento di più tabelle in Oracle

Aggiornamento - Quello che sto cercando di fare è qualcosa di simile

UPDATE table1 t1 JOIN table2 t2 ON t1.id = t2.id SET t1.column1 = 'ABC', t2.column2 = 'BCD' WHERE <condition> 
+0

Hai trovato una soluzione per questo? Ho un problema simile in cui vorrei aggiornare una colonna di stato in ciascuna delle due tabelle con una chiamata db anziché due chiamate separate. – bakoyaro

+1

No. Non ha funzionato. –

risposta

4

Quale problema stai cercando di risolvere? Non è possibile utilizzare una singola istruzione di aggiornamento in Oracle per aggiornare più tabelle, ma è possibile utilizzare un trigger "Invece di" su una vista.

+0

Ho solo l'autorizzazione SELECT e UPDATE. Non riesco a creare un trigger. –

+0

@Joyce Babu: la vista e il trigger possono essere nel proprio schema. Non dovresti avere bisogno di ulteriori privilegi sui tavoli. (Suppongo che tu possa almeno creare oggetti nel tuo schema.) –

+0

Grazie jonearles. Il progetto è finito e non ho più accesso al server per testarlo. –

Problemi correlati