Junior — Middle
შეგიძლიათ ახსნათ ტრანზაქციის გადახედვის ოპერაციის მუშაობის პრინციპი?
sobes.tech AI
პასუხი AI-სგან
ტრანზაქციის გადატანა (rollback) ოპერაცია გამოიყენება მიმდინარე ტრანზაქციის ფარგლებში განხორციელებული ყველა ცვლილების გაუქმებისთვის, თუ მოხდა შეცდომა ან ოპერაცია ვერ დასრულდება წარმატებით. მაგალითად, Java-ში JDBC-ის საშუალებით მონაცემთა ბაზასთან მუშაობისას, ტრანზაქცია იწყება ავტო-დადასტურების გამორთვით (connection.setAutoCommit(false)), შემდეგ შესრულდება SQL-საკითხები. თუ ყველაფერი წარმატებით დასრულდა, გამოიძახება connection.commit() ცვლილებების შენახვისთვის. თუ მოხდა შეცდომა, გამოიძახება connection.rollback(), რათა მონაცემთა ბაზა დაბრუნდეს ტრანზაქციის დაწყებამდე მდგომარეობაში.
ეს უზრუნველყოფს მონაცემების მთლიანობას და აცილებს ნაწილობრივ შესრულებულ ოპერაციებს.
Java-ში JDBC-ის მაგალითი:
Connection connection = dataSource.getConnection();
try {
connection.setAutoCommit(false);
// რამდენიმე ოპერაციის შესრულება მონაცემთა ბაზაზე
// ...
connection.commit();
} catch (SQLException e) {
connection.rollback(); // ყველა ცვლილების გაუქმება
} finally {
connection.setAutoCommit(true);
connection.close();
}