Einzelnen Beitrag anzeigen
Alt 19.02.2007, 15:18   #1
Biri
Hero
 
Registriert seit: 04.09.2001
Beiträge: 894


Frage Transaktion über mehrere Datenbanken

hi,

ich hab da eine interessante frage an euch.

Und zwar arbeite ich an einem System, welches DB Operationen mit einem OR Mapper ausführt (Komponente 1 - K1) und hier auch Transaktionen macht. Weiters wird über eine andere Komponente ebenfalls auf eine Datenbank - die ev. ganz wo anders läuft - zugegriffen. (Komponente 2 - K2)

Manche Funktionen einer zussammengehörigen Operation greifen auf K1 und K2 zu.

Beispiel:

Beginne Transaktion in K1
Schreibe ein paar Daten in K1
Beginne Transaktion in K2
Schreibe ein paar Daten in K2
Commit Transaktion K2
(versuche) Commit Transaktion K1
=> FEHLER
Rollback Transaktion K1

Und nun gibts ein Problem, die Transaktion in K2 wurde commited, die in K1 rückgängig gemacht.

Was ich bräuchte wäre so eine Art "übergeordnete Transaktion". Wie implementiert man so etwas bzw. bietet Sql Server 2005 Möglichkeiten in diese Richtung?

thx
hannes
Biri ist offline   Mit Zitat antworten