PostgreSQLのドキュメント、Web、またはここStackOverflowでさえ、その単純な質問の情報を取得することはできません...ここで重要なことを理解してはなりません。
私はPostgreSQLで単純なSELECT
/UPDATE
トランザクションを作成しています:
START TRANSACTION;
SELECT "column" FROM "table" WHERE "criterion" = 'value' AND "activated" = true;
UPDATE "table" SET "activated" = false WHERE "criterion" = 'value';
COMMIT
基本的に、activated
状態がのときに列の値を取得してtrue
から非アクティブ化する必要があります。PostgreSQLは、キャンセルされた1行の結果があったことを教えてくれます
UPDATE
次の場合も同じことが起こります(基本的に、ステートメントなしで同じトランザクション)。
START TRANSACTION;
SELECT "column" FROM "table" WHERE "criterion" = 'value' AND "activated" = true;
COMMIT
トランザクションについて何がわかりませんか?SELECT
トランザクションブロックから出力を取得できませんか?