I'm trying to make sense from "autocommit" concept.
Originally I've heart about it in the context of Java JDBC API Connection.setAutoCommit(boolean autoCommit)
Quick search revealed that the term is not specific to JDBC, PostgreSQL refer to "autocommit" too:
https://www.postgresql.org/docs/current/sql-start-transaction.html
In the standard, it is not necessary to issue
START TRANSACTION
to start a transaction block: any SQL command implicitly begins a block. PostgreSQL's behavior can be seen as implicitly issuing a COMMIT after each command that does not followSTART TRANSACTION
(orBEGIN
), and it is therefore often called “autocommit”. Other relational database systems might offer an autocommit feature as a convenience.
If it is widespread what is isolation level of autocommit mode?
Conceptually as we have only one SQL statement before implicit COMMIT
isolation levels almost make no sense for autocommit. Only READ UNCOMMITTED might influence the result, other anomalies are defined in term of a sequence of SQL statements.
Can I alter autocommit isolation level to / away from READ UNCOMMITTED?