Database somo la 24: Transaction kwenye database
Katika somo hili utakwend akujifunza kuhusu nadharia ya transaction kwenye database
Transaction kwenye Database
1. Maana ya Transaction
Transaction ni seti ya shughuli zinazofanyika kwenye database ambazo zinapaswa kutekelezwa kama kitengo kimoja cha kazi. Hii inamaanisha kuwa shughuli zote ndani ya transaction zinapaswa kufanyika kikamilifu au kutofanyika kabisa ili kuhakikisha data inabaki katika hali thabiti.
Mfano wa transaction:
- Kuongeza pesa kwenye akaunti ya mtumiaji mmoja huku ukitoa pesa kwa mtumiaji mwingine.
- Kufanya malipo ya bidhaa huku ukisasisha hesabu ya bidhaa hizo kwenye stoo.
2. Kanuni za Transaction (ACID)
Transactions hufuata kanuni za ACID, ambazo zinahakikisha uadilifu wa data:
- Atomicity (Umoja): Shughuli zote ndani ya transaction zinapaswa kufanyika kikamilifu au kutofanyika kabisa. Ikiwa sehemu moja ya transaction inashindwa, shughuli yote itarudishwa nyuma.
- Consistency (Mlingano): Transaction inapaswa kubadilisha data kutoka hali moja thabiti kwenda hali nyingine thabiti.
- Isolation (Kutengwa): Transactions zinapaswa kutekelezwa bila kuingiliana, ili shughuli ya transaction moja isivuruge nyingine.
- Durability (Uimara): Mara transaction inapokamilika, mabadiliko ya data yanapaswa kuhifadhiwa hata kama kuna hitilafu kama kukatika kwa umeme.
3. Jinsi Transaction Inavyofanya Kazi
Transaction kawaida hufuata hatua zifuatazo:
- Kuanza: Transaction inaanza kwa kutumia amri ya
BEGIN TRANSACTION. - Kutekeleza: Maswali ya SQL kama
INSERT,UPDATE, naDELETEyanafanyika. - Kukamilisha: Transaction inathibitishwa kwa kutumia
COMMIT, ambayo huhifadhi mabadiliko kwenye database. - Kurudisha Nyuma: Ikiwa kuna hitilafu, mabadiliko yote hurudishwa nyuma kwa kutumia
ROLLBACK.
4. Amri za Transaction
a) BEGIN TRANSACTION
Hutangaza mwanzo wa transaction.
BEGIN TRANSACTION;
b) COMMIT
Huhifadhi mabadiliko yote yaliyofanyika ndani ya transaction.
COMMIT;
c) ROLLBACK
Hutengua mabadiliko yote yaliyofanyika ndani ya transaction ikiwa kuna hitilafu.
ROLLBACK;
5. Mfano wa Transaction
Mfano wa Kawaida
Kuongeza pesa kwenye akaunti ya mtumiaji mmoja na kutoa pesa kwa mwingine:
BEGIN TRANSACTION;
-- Toa pesa kutoka akaunti ya A
UPDATE Akaunti
SET salio = salio - 1000
WHERE akaunti_id = 1;
-- Ongeza pesa kwenye akaunti ya B
UPDATE Akaunti
SET salio = salio + 1000
WHERE akaunti_id = 2;
-- Hifadhi ma...Umeionaje Makala hii.. ?
Share On:
👉1 kitabu cha Simulizi 👉2 Simulizi za Hadithi Audio 👉3 web hosting 👉4 ai web app 👉5 Madrasa kiganjani 👉6 Dua za Mitume na Manabii
Post zinazofanana:
SQL - MySQL somo la 9: Jinsi ya kusoma data kwenye database
Katika somo hili utakwenda kujifunza jinsi ya kusoma data kutoka kwenye database. Pia utajifunza jinsi ya ku limit kiasi cha data ambazo zitaonekana.
Soma Zaidi...SQL somo la 18: Jinsi ya kutengeneza function kwenye mysql database
Wakati mwingne utahitaji kuwa na function ili kurahisisha uchakataji wa data nyingi bila ya kurudia rudia kuandika code.
Soma Zaidi...Database seomo la 21: Constraints kwenye Database
Katika somo hili utakwenda kujifunz akuhusu nadharia ya Constraints kwenye Database
Soma Zaidi...SQL - MySQL somo la 6: Jinsibya kutengeneza table kwenye database
Katika somo hili utakwenda kujifunza jinsi ya kutengeneza table za database
Soma Zaidi...SQL -MySQL somo la 4; Jinsi ya kufuta database, kuitumia database na kubadili jina la database pamoja
Katika somo hili utajifunza kupata orodha ya database, kubadilibjina la database, kufuta database
Soma Zaidi...SQL - MySQL somo la 12: Jinsi ya kutafuta wastani, jumla na idadi kwenye database
Katika somo hili utakwenda kujifunza jinsi ya kufanya mahesabu mbalimbali kwenye database. Kwa mfano kutafuta jumla, idadi na wastani
Soma Zaidi...