0

トランザクションを実装する postgresql 関数を書いています。コードは次のようになります。

BEGIN TRANSACTION REPEATABLE READ
INSERT INTO table1 VALUES(value1, value2);
INSERT INTO table2 VALUES(value3);
COMMIT
END;

ここで、挿入クエリの 1 つが挿入ロールバックに対して何らかのエラーを返すかどうかを確認する必要があります。どうすればできますか?

4

1 に答える 1

0

エラーのチェックと処理は適切です。一貫して行います。トランザクションは自動的にロールバックされますが、ユーザー ログに問題を警告するか、他のアクションを実行する必要がある場合があります。これは、データベース エラーが発生した場合、トランザクションが自動的にロールバックすると言われています。

一方、(データベース外の) アプリケーション エラーのためにトランザクションをロールバックする必要がある場合は、ROLLBACKコマンドを発行します。

于 2013-11-03T01:45:56.533 に答える