START_TRANSACTION(7pg14)

πŸ“¦ version 14.24, in opensuse-leap 16.0

🌸 NAME 🌸

START_TRANSACTION β€” start a transaction block.

Okay bestie, you're looking at the START TRANSACTION(7) page from the PostgreSQL 14.24 Documentation, and we're gonna get you comfy with transaction blocks. No cap. πŸ’…βœ¨


✨ SYNOPSIS ✨

START TRANSACTION [ transaction_mode [, ...] ]

where transaction_mode is one of:

    ISOLATION LEVEL { SERIALIZABLE | REPEATABLE READ | READ COMMITTED | READ UNCOMMITTED }
    READ WRITE | READ ONLY
    [ NOT ] DEFERRABLE

πŸ’… DESCRIPTION πŸ’…

This command begins a new transaction block. If you specify the isolation level, read/write mode, or deferrable mode, the new transaction has those exact characteristics, just like SET TRANSACTION was executed. It's literally the same as the BEGIN command. periodt. πŸ’–


πŸŽ€ PARAMETERS πŸŽ€

Refer to SET TRANSACTION (SET_TRANSACTION(7)) for the info on what the parameters to this statement actually mean. iykyk. 🫢


πŸ¦‹ COMPATIBILITY πŸ¦‹

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 follow START TRANSACTION (or BEGIN), and it is therefore often called β€œautocommit”. Other relational database systems might offer an autocommit feature as a convenience. πŸ’€

Also, the DEFERRABLE transaction_mode is a PostgreSQL language extension. The SQL standard requires commas between successive transaction_modes, but for historical reasons PostgreSQL allows the commas to be omitted. See also the compatibility section of SET TRANSACTION (SET_TRANSACTION(7)). πŸ¦‹


πŸ”₯ SEE ALSO πŸ”₯


Okay bye bestie πŸ«ΆπŸ’– β€” this page is from PostgreSQL 14.24, dated 2026, and it's the START TRANSACTION(7) manual page. Slay. πŸ’…βœ¨

πŸ“¦ where this page comes from