A5:SQL Mk-2

開発のこと、日々のこと

エラーが起きたトランザクションでrollbackができない

ホーム フォーラム A5:SQL Mk-2掲示板 エラーが起きたトランザクションでrollbackができない

  • このトピックは空です。
1件の投稿を表示中 - 1 - 1件目 (全1件中)
  • 投稿者
    投稿
  • #31951 返信
    よね
    ゲスト

    いま教育のためにA5M2でSQLを実行した時の挙動を確認しています。
    トランザクション内でエラーが起きた場合について教えるために下記のようなSQLを上から順に流そうとしました。

    begin;
    insert into XXXXXX values(null,10000,29999);

    そうしたら2個目でテーブルが存在しないエラーになりました。これは想定通りです。
    その後エラーが起きたから今のトランザクションを終わるために「rollback;」を実施しようとしました。
    実施したところ「current transaction is aborted, commands ignored until end of transaction block」と出てしまいrollback自体が通りません。

    試しにbegin、正常なselect文、commitなどを実行して挙動を確かめましたが同じように「current transaction is aborted, commands ignored until end of transaction block」となってしま
    いました。

    トランザクションの練習なので手動でトランザクションを開始して手動でrollbackなりcommitなりでトランザクションを終わらせたいというのが主眼なのですが、エラー時には手動ロールバックは行えないクライアントソフトという認識でよいでしょうか?
    それともrollbackはできるはずなのに何かしらの要因でできなくなってしまっているのでしょうか?

1件の投稿を表示中 - 1 - 1件目 (全1件中)
返信先: エラーが起きたトランザクションでrollbackができない
あなたの情報:




コメントは受け付けていません。