Junior
რა არის ტრანზაქცია?
sobes.tech AI
პასუხი AI-სგან
გარიგება არის მონაცემებზე მუშაობის დაუყოფელი სერია, რომელიც ან სრულად ხორციელდება, ან სრულად უარყოფილია, სისტემას არ ტოვებს შუა მდგომარეობაში.
გარიგებების ძირითადი თვისებები (ACID):
- ატომარობა (Atomicity): გარიგება ან სრულად ხორციელდება, ან საერთოდ არა.
- კონსისტენცია (Consistency): გარიგება სისტემას აჰყავს ერთგვაროვან მდგომარეობიდან სხვა ერთგვაროვან მდგომარეობაში.
- იზოლაცია (Isolation): პარალელურად მიმდინარე გარიგებები ერთმანეთზე გავლენას არ უნდა ახდენდნენ.
- მტკიცებულობა (Durability): წარმატებით დასრულებული გარიგების შედეგები ინახება სისტემის გატყდომის მიუხედავად.
Python-ში გარიგებები ხშირად გამოიყენება მონაცემთა ბაზებთან მუშაობისას, მაგალითად:
// import psycopg2
// conn = psycopg2.connect(...)
// cur = conn.cursor()
// try:
// cur.execute("INSERT INTO users (name) VALUES (%s)", ('Alice',))
// cur.execute("UPDATE accounts SET balance = balance - 100 WHERE user\_id = 1")
// conn.commit() // გარიგების დადასტურება
// except Exception as e:
// conn.rollback() // გარიგების უკან დაბრუნება შეცდომის დროს
// print(f"გარიგება ვერ შესრულდა: {e}")
// finally:
// cur.close()
// conn.close()