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.