Junior — Middle
Оё метавонед шарҳи кунед, ки дар контексти SQL транзаксия чӣ маъно дорад ва чӣ гуна кор мекунад?
sobes.tech AI
Ҷавоб аз AI
Дар контексти SQL, транзаксия — ин силсилаи амалиётҳо дар бораи маълумотхонаи аст, ки ҳамчун як воҳид иҷро мешавад. Транзаксия кафолат медиҳад, ки ё ҳамаи амалҳо бо муваффақият анҷом меёбанд ё ягон яке аз онҳо ба маълумотхона таъсир намерасонад (атомикӣ).
Хусусиятҳои асосии транзаксияҳо (ACID):
- Атомикӣ: ҳамаи амалҳо дар транзаксия ё пурра иҷро мешаванд ё ҳеҷ гоҳ.
- Мувофиқият: пас аз иҷрои транзаксия, маълумотхона дар ҳолати дуруст мемонад.
- Изоляция: транзаксияҳои параллелӣ ба ҳам таъсир намерасонанд.
- Давомнокӣ: пас аз тасдиқ, тағирот ҳатто дар ҳолати хато нигоҳ дошта мешавад.
Масалан, истифодаи транзаксия дар SQL:
BEGIN TRANSACTION;
UPDATE accounts SET balance = balance - 100 WHERE id = 1;
UPDATE accounts SET balance = balance + 100 WHERE id = 2;
COMMIT;
Агар дар раванд хатогӣ рӯй диҳад, метавон ROLLBACK; иҷро кард — пас тағирот бекор карда мешаванд.