Krijimi i Databazës në SQL

5.      TRANSAKSIONET

 

Një transaksion është një njësi e organizuar pune që kryhet kundrejt një databaze. Transaksionet janë sekuenca pune të kryera në një renditje llogjike në mënyrë manuale prej përdoruesit ose automatikisht prej ndonjë programi. Një transaksion është një shumim i një ose disa ndryshimeve në databazë. Për shembull, nëse jeni duke regjistruar ose fshirë një rekord nga një tabelë, atëherë kjo tregon se jeni duke kryer transaksion në tabelë. Është e rëndësishme të kontrollohen transaksionet për të garantuar integritetin e të dhënave dhe për të evidentuar gabimet në databazë. Praktikisht, shumë prej kërkesave SQL do të grupohen dhe do të ekzekutohen së bashku si pjesë e një transaksioni.

Transaksionet gëzojnë katër vetitë standarde të mëposhtme të cilat identifikohen me akronimin ACID.

  • Garanton që të gjitha veprimet brenda njësisë së punës kryhen plotësisht, përndryshe transaksioni ndalet në pikën e ndërprerjes dhe veprimet e deriatyshme rikthehen në gjendjen e mëparshme.
  • Garanton që databaza ndryshon siç duhet nga një transaksion i ekzekutuar suksesshëm.
  • Garanton që transaksionet veprojnë në mënyrë të pavarur dhe transparente ndaj njëri tjetrit.
  • Qëndrueshmëria. Garanton që rezultati ose efekti i një transaksioni të ekzekutuar vazhdon dhe qëndron në rastin e një rënie të sistemit.

Me kontroll transaksioni nënkuptohet aftësia e sistemit për të kryer transaksione. Komandat që përdoren për kontrollin e transaksioneve janë COMMIT, ROLLBACK, SAVEPOINT, SET TRANSACTION. Komandat e kontrollit të transaksioneve përdoren vetëm me komandat e gjuhës së manipulimit të të dhënave INSERT, UPDATE dhe DELETE. Ata nuk mund të përdoren gjatë krijimit të tabelave ose fshirjes së tyre sepse këto veprime kryhen automatikisht në databazë.

Komanda COMMIT.Përdoret për të ruajtur ndryshimet e imponuara prej një transaksioni. Ajo ruan të gjitha transaksionet në databazë që nga zbatimi i fundit i kësaj komande përfshirë dhe komandën ROLLBACK. Le të marrim një shembull. E zemë se jepet një tabelë të dhënash e quajtur “Studentët” që përmban njëkollonëme emrin “mosha”. Sintaksa e mëposhtme do të fshijë fillimisht të gjithë rekordet të cilat i takojnë rekordeve me vlerë të fushës mosha të barabartë me 25, dhe pastaj të pranojë ndryshimet në databazë nëpërmjet komandës COMMIT.

Komanda ROLLBACK.Përdoret për tëçbërë transaksionet të cilat nuk janë ruajtuar ende në databazë. Ajo mund të përdoret për tëçbërë transaksionet që nga zbatimi i fundit i komandave COMMIT dhe ROLLBACK. Duke ndjekur shembullin e tabelës më sipër, nëse janë fshirë rekordet që i takojnë fushës mosha=25 dhe ne dëshirojmë të rikthejmë rekordet e fshira, atëherë përdorim komandat e mëposhtme

Komanda SAVEPOINT.Një pikë shpëtimi është një pikë në një transaksion që përcaktohet dhe përdoretmë pas për kthimine transaksionit nëatë pikë pa çbërë tërë transaksionin. Sintaksa e përgjithshme është në trajtën

Kjo komandë shërben vetëm për shenjimin e pikës së shpëtimit në transaksione. Për tu kthyer pas në një  pikë të caktuar shpëtimi të krijuar paraprakisht përdoret komanda

Komanda RELEASE SAVEPOINT.Përdoret për të fshirë apo eliminuar një pikë shpëtimi ekzistuese. Sintaksa e përdorur në këtë rast është në trajtën

Pasi ajo fshihet, komanda ROLLBACK nuk mund të përdoret më për ti ç’bërë transaksionet e kryera deri në atëpikë shpëtimi.

Komanda SET TRANSACTION.Përdoret për të nisur apo filluar një transaksion. Ajo përdoret për të specifikuar karakteristikat për transaksionin që pason. Për shembull, për të specifikuar që një transaksion të jetë “read only” ose “read write”, atëherëzhvillohet sintaksa e mëposhtme

READ ONLY është një cilësim që përdoret për të përcaktuar mosndryshimin e rekordeve derisa transaksioni përfundon, ndërsa READ WRITE përcakton mundësinë për të futur dhe ndryshuar rekordet.

[cite]
Comments
All comments.
Comments