Я также DEARLY предпочитаю, чтобы Oracle автоматически вводил все в транзакцию, чтобы избежать катастрофических ошибок вручную.
Включение автоматической фиксации по умолчанию в Предприятие продукт, IMO, за гранью порока, и ничего, кроме ПОЛНОСТЬЮ, НАДЕЖНО СУЩЕСТВУЮЩИМ Выбор дизайна: (
В любом случае -- работая с Postgres, всегда нужно помнить
BEGIN;
в начале ручной работы или sql-скрипты.
Какпрактическая привычка: тогда, когда вы скажете: COMMIT; в Oracle, я использую строку
END; BEGIN;
в Postgres, котораяделает то же самое, то есть фиксирует текущую транзакцию и немедленно запускает новую.
При использовании JDBC или аналогичного метода для создания соединения всегда используйте какой-либо метод, например, getPGConnection (), который включает в себя:
...
Connection dbConn = DriverManager.getConnection(dbUrl, dbUser, dbPassword);
dbConn.setAutoCommit(false);
...
, чтобы убедиться, что в каждом соединении отключена автоматическая фиксация.