Tárolt eljárás Tranzakció kezelés
Sziasztok!
Sokat kérdezek :)
Tranzakció kezelésről kérdeznék.Hogy jobb kezelni a tranzakciókat (kliens oldal agy szerver oldal)
illetve ha szerver oldal akkor tárolt eljárásban le lehet e kezelni a (COMMIT,ROLLBACK)
utasításokat.
■ Sokat kérdezek :)
Tranzakció kezelésről kérdeznék.Hogy jobb kezelni a tranzakciókat (kliens oldal agy szerver oldal)
illetve ha szerver oldal akkor tárolt eljárásban le lehet e kezelni a (COMMIT,ROLLBACK)
utasításokat.
Fejtsd ki...
konkrétan
KLIENSBEN: TARNSACTION BEGIN
SQL(raktárból-1);
ha hiba
{
ROLLBACK
}
COMMIT
TÁROLT ELJÁRÁSBAN na ez az amit nem tudom hogyan kell kezelni és példát sem találtam rá a neten
VAGY
KLIENSBEN TARNSACTION BEGIN
SQL(CALL RAKTÁRBÓL(-1));
ha hiba
{
ROLLBACK
}
COMMIT
ugyanúgy, mint bármelyik SQL parancsot
ugyanaz vonatkozik az SP-k re, mint bármilyen más SQL parancsra, tehát pl. a PHP-ból kiadhatsz ROLLBACK-ot vagy COMMIT-ot, a tárolt eljárás ennek megfelelően fog véglegesülni vagy visszagörgetődni. Példa:
Itt egy tárolt eljárás, amelyik beszúr egy sort:
A helyzet bonyolódhat akkor ha az SP-ken belül vannak más tárolt eljárások indítva, vagy vannak belső tranzakciók, de ezeket az SP-ken belül kell lekezelni.
Köszönöm
erről már volt szó ebben a fórumban,csak hogy világos legyen.
lefut, ill a program a query részhez ér és ott lefagy elmegy az internet, leáll az adatbázis.
ha jól gondolom ilyenkor nincs gond mivel a COMMIT parancs nem hajtódik végre, ill a ROLLBACK értelmetlen (mert nincs adatbázis kapcsolat) és COMMIT hiányában nem fut le.
bombabiztos bunker :)