Keresés

Részletes keresés

Pathmaster Creative Commons License 2022.03.07 0 0 2

A (ritka kivételektől eltekintve, mint például a naplózás nélküli tömeges beillesztések, vagy a táblázat csonkítása) minden SQL utasítást tartalmaz a tranzakciós napló, mert a nyílt deklarációtól függetlenül minden SQL utasítás automatikusan tranzakcióba kerül.

Előzmény: Pathmaster (1)
Pathmaster Creative Commons License 2022.03.06 0 0 1

Úgy tűnik, hogy a tranzakció orientált DBMS-ek tranzakciós naplót is szoktak vezetni, továbbá az eseménynapló a tranzakcióba nem foglalt eseményeket is tárolja. Vagyis a tranzakciós naplónál többféle adatot tárol az eseménynapló. (https://hu.wikipedia.org/wiki/Napl%C3%B3f%C3%A1jl_(informatika))

 

Ezzel együtt az is tudható, hogy a tranzakciók naplózása sokkal elterjedtebb az események naplózásánál. Ezért ha olyan DBMS-t használunk, amely csak a tranzakciókba foglalt eseményeket naplózza, akkor felmerülhet annak az igénye, hogy minden naplózandó SQL utasítást tranzakcióba foglalunk. Ezek után felmerül a kérdés: "Van-e olyan SQL utasítás, amely nem foglalható tranzakcióba?".

Előzmény: mma (-)
bindera Creative Commons License 2007.11.30 0 0 0
0k
mma Creative Commons License 2007.11.30 0 0 topiknyitó

Olvastam egy hasznos cikket a Transact-SQL tranzakcióinak az egymásba ágyazott procedurákban használatáról:

http://www.code-magazine.com/articleprint.aspx?quickid=0305111&page=4&printmode=true

 

 

A szerző két lehetséges megoldást javasol, a Single-Level Modelt és a Multi-Level Modelt, és röviden össze is hasonlítja őket. Én arra lennék kíváncsi, hogy azon túl, amit ő mond, ti milyen érveket tudnátok egyik vagy másik modell mellett felhozni.

 

Egyáltalán, azon kívül, hogy a constraintek a wait_for_commit = ON beállítás mellett, vagy ha CHECK ON COMMIT opcióval vannak definiálva, csak a commit parancs során vannak ellenőrizve, mi értelme van egy beágyazott commit parancsnak? (A cikk szerint a változásokat csak a legkülső tranzakció commit-ja véglegesíti.)

 

Beágyazott rollback meg nincs is. Szóval mi értelme a tranzakciók egymásba ágyazásának Transact-SQL-ben?

 

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!