Tranzacții în 1s 8

În pregătirea pentru certificare 1C „expert“ în ajunul a două teme foarte importante și globale - blocare și interblocărilor ar dori să facă din care este indispensabilă pentru conceptele menționate mai sus - tranzacția de baze de date.







Tranzacții în 1s 8

Ce este o tranzacție?

Tranzacția este o secvență logică de acțiuni indivizibile. O tranzacție poate fi încheiată integral sau deloc. Pentru a angaja o tranzacție în DBMS, se folosește metoda COMMIT.

Un exemplu tipic al unei tranzacții este transferul de fonduri de la un cont la altul:

După cum vedem, dacă tranzacția nu este finalizată complet, atunci nu are sens.

Cerințe-cheie (ACID) pentru un DBMS tranzacțional

Unul dintre seturile cele mai comune de cerințe privind baza de date pentru tranzacții și tranzacții este setul ACID (Atomicity, Consistency, Isolation, Durability). Acestea sunt proprietățile pe care orice tranzacție ar trebui să le aibă:







  • Atomicitate - nici o tranzacție nu ar trebui înregistrată parțial;
  • Consistență - sistemul este într-o stare convenită înainte de începerea tranzacției și trebuie să rămână într-o stare consecventă după terminarea tranzacției;
  • Izolarea - în timpul tranzacției, tranzacțiile paralele nu ar trebui să afecteze rezultatul acesteia;
  • Durabilitate - în caz de eșec, modificările efectuate de o tranzacție finalizată cu succes trebuie să rămână stocate după ce sistemul revine la lucru.

Tranzacții în 1C

Tranzacțiile din 1C 8.3 și 8.2 sunt create atât automat, cât și descrise de dezvoltatori.

Utilizând metoda Transaction Active (), puteți stabili dacă tranzacția este activă.

Un exemplu de tranzacție automată este procesarea unui document, introducerea unei intrări de director într-o bază de date, înregistrarea unui set de înregistrări din registrul de informații și așa mai departe.

Dezvoltatorul poate crea singur tranzacția. Pentru a efectua acțiuni într-o tranzacție, trebuie să o activați în cod:

La sfârșitul tranzacției, trebuie să o remediați:

Dacă doriți să anulați acțiunile tranzacției, trebuie să executați metoda:

1C nu acceptă tranzacții imbricate. Prin urmare, dacă deschideți tranzacția de mai multe ori, aceasta "se îmbină" într-una. Dacă vă angajezi sau o anulați, atunci această acțiune este efectuată cu toate tranzacțiile activate anterior.







Articole similare

Trimiteți-le prietenilor: