Tema: Re: transakcijos
Autorius: rl
Data: 2011-11-23 10:52:54
Nelabai tinkamas pavyzdys laikyti atidaryta tranzakcija neapibrezta 
laiko tarpa, kol ten gausi koki timeout'a is PDA irenginio, ar koks wifi 
nusitimeout'ins...

Nebent cia single-user aplikacijos atveju tiktu :)

On 2011.11.23 09:58, Jornada Del Muerto wrote:
> Va toks viens praktiniu pritaikymu, pvz. reikia sukurti programa kuri atliktu duomenu importa i duomenu baze, pvz. reikalavimai:
>
> 1. Importo saltinis gali buti ne visada pasiekiamas ar proceso metu dingti (pvz. interneto luzis, ar jei tai importas is pvz. PDA irenginio sutrinka WLAN rysys ar tiesiog vartotojas ji nutraukia, o gal atjungia, na zodziu ne tame esme...);
>
> 2. Importo modulis turi sugebeti importuoti daug labai informacijos, kas reiskia kad gaunama informacija netinka laikyti RAM!
>
> Na ir ka tada darome:
>
> 1. Startuojam tranzakcija;
> 2. Ciklu imam ir dedam i DB duomenis;
> 3. Jei ivyksta kazkokia klaida darom roolback;
> 4. Jei ne commit. ir viskas...
>
> Si uzdavini realiai tai paprasciausias budas isspresti, jei nedesi tranzakcijos tai duomenys bus prieinami visom kitom DB funkcijom, nors sutrikus improtui ir sumascius pvz. vartotojui ji pakartoti tada gautumem po 2 siu duomenu kopijas, arba pvz. luzis jo vyko del to kad vartotojas persigalvojo kad nereikia siu duomenu importuoti, o jei be tranzakcijos tai ju dalis jau bus duombazeje....
>
> JDM.