Αν θέλεις να εκτελέσεις και τις δύο τροποποιήσεις στα πλαίσια ενός transaction χρησιμοποιώντας SQL statements θα πρέπει να φτιάξεις ένα string με τις εντολές και στην αρχή του να βάλεις "BEGIN TRANSACTION;" και στο τέλος "COMMIT;". Π.χ.
"BEGIN TRANSACTION;
UPDATE TABLE1
SET Field1='XXX'
WHERE ID=1;
UPDATE TABLE2
SET Field2='XXX'
WHERE ID=2;
COMMIT;"
Νομίζω ότι στην Oracle θα πρέπει να τροποποιήσεις τα default, καθώς θεωρεί ότι οποιαδήποτε εντολή μετά από ένα commit ξεκινάει νέο transaction. Θα πρέπει να το δοκιμάσεις όμως, γιατί έχω καιρό να χρησιμοποιήσω Oracle.
Αυτό που λες για τα double quotes δεν ισχύει ούτε στον SQL Server. Και στον SQL Server, για να εκτελέσεις πολλαπλά updates σε ένα transaction θα πρέπει να χρησιμοποιήσεις τα BEGIN TRANSACTION ... COMMIT.
Παναγιώτης Καναβός, Freelancer
Twitter: http://www.twitter.com/pkanavos