Sobes.tech
Junior — Middle

Възможно ли е в една транзакция да се изпълнят няколко различни SQL заявки?

sobes.tech AI

Отговор от AI

Да, в една транзакция могат да бъдат изпълнени няколко различни SQL заявки. Транзакцията осигурява атомарност, тоест всички заявки вътре в нея или се изпълняват успешно заедно, или при грешка се отменят. В Java с използване на JDBC това се прави така:

connection.setAutoCommit(false); // изключване на автоматичния комит
try {
    Statement stmt = connection.createStatement();
    stmt.executeUpdate("INSERT INTO users (name) VALUES ('Alice')");
    stmt.executeUpdate("UPDATE accounts SET balance = balance - 100 WHERE user_id = 1");
    connection.commit(); // потвърждаване на транзакцията
} catch (SQLException e) {
    connection.rollback(); // връщане назад при грешка
}