Принудительная транзакция в psql

234
mawaldne

Когда я использую консоль psql, можно ли принудительно запускать какие-либо операции вставки / обновления / удаления в транзакции? Или мне всегда нужно явно начинать каждую команду с «НАЧАЛА»?

1

1 ответ на вопрос

0
mawaldne

Похоже, есть функция AUTOCOMMIT, о которой я не знал:

AUTOCOMMIT When on (the default), each SQL command is automatically committed upon  successful completion. To postpone commit in this mode, you must enter a  BEGIN or START TRANSACTION SQL command. When off or unset, SQL commands are  not committed until you explicitly issue COMMIT or END. The autocommit-off  mode works by issuing an implicit BEGIN for you, just before any command  that is not already in a transaction block and is not itself a BEGIN or  other transaction-control command, nor a command that cannot be executed  inside a transaction block (such as VACUUM).  Note: The autocommit-on mode is PostgreSQL's traditional behavior, but  autocommit-off is closer to the SQL spec. If you prefer autocommit-off, you  might wish to set it in the system-wide psqlrc file or your ~/.psqlrc file 
https://www.postgresql.org/docs/9.1/static/ecpg-sql-set-autocommit.html mawaldne 6 лет назад 0

Похожие вопросы