sql >> データベース >  >> RDS >> Oracle

Oracle 11 - sqlplus - エラー時にスクリプト全体をロールバック - どのように?

    私は問題を解決し、誰かがそのような問題に遭遇した場合に備えて、解決策を投稿します.

    スクリプトに DDL コマンドを入れなければ、ロールバックは正しく実行されます。

    スクリプトは次のとおりです。

    set autocommit off
    whenever SQLERROR EXIT ROLLBACK
    
    insert into a values (1);
    insert into a values (2);
    
    insert into a values ('x');
    
    commit;
    

    動作します。

    また、DDL が使用されている場合、通常、Oracle はロールバック機能を提供しません。



    1. 30分以下の時間で行を選択しますか?

    2. IPアドレス範囲で一致するMySQL詳細レコードの要約-mySQLJediKnightが必要

    3. 指定された場所のxmltypeにxmltypeを挿入します[PL/SQL]

    4. 時間範囲内で5分の間隔にグループ化