SPI_commit, SPI_commit_and_chain <refpurpose>commit the current transaction</refpurpose> — 現在のトランザクションをコミットします。
void SPI_commit(void)
void SPI_commit_and_chain(void)
<function>SPI_commit</function> commits the current transaction. It is
approximately equivalent to running the SQL
command <command>COMMIT</command>. After the transaction is committed, a
new transaction is automatically started using default transaction
characteristics, so that the caller can continue using SPI facilities.
If there is a failure during commit, the current transaction is instead
rolled back and a new transaction is started, after which the error is
thrown in the usual way.
SPI_commit
は現在のトランザクションをコミットします。
これはSQLコマンドのCOMMIT
を実行することと概ね同等です。
トランザクションがコミットされた後には、新しいトランザクションが自動的にデフォルトのトランザクションの特性を使って開始されます。ですので、呼び出し元はSPIを使い続けることができます。
コミット中に失敗した場合、現在のトランザクションは代わりにロールバックされ、新しいトランザクションが開始され、その後、通常通りエラーが発生します。
<function>SPI_commit_and_chain</function> is the same, but the new
transaction is started with the same transaction
characteristics as the just finished one, like with the SQL command
<command>COMMIT AND CHAIN</command>.
SPI_commit_and_chain
は同じですが、新しいトランザクションは、SQLコマンドCOMMIT AND CHAIN
と同じように、直前に完了したものと同じトランザクションの特性で開始されます。
These functions can only be executed if the SPI connection has been set as
nonatomic in the call to <function>SPI_connect_ext</function>.
これらの関数はSPI接続がSPI_connect_ext
の呼び出しで非原子的と設定されている場合のみ、実行できます。