0

エラーが発生したときにカスタマイズされたメッセージを出力して、 SQLPlus でエラー処理を行うにはどうすればよいですか。私は自分のコードを以下に置きました。

マイコード

#!/bin/bash

    echo "My Scripts run below"
    sqlplus -S UID1/UID2@DB1<< EOF
    whenever sqlerror exit sql.sqlcode;
    @/path/Script1
    @/path/Script2
    exit;
    EOF
   echo "My Scripts have run"

出力

My Scripts run below
SP2-0310: unable to open file "/path/Script1.sql"
SP2-0310: unable to open file "/path/Script2.sql"
My Scripts have run

必要な出力

My Scripts run below
**Below error in Script1**
SP2-0310: unable to open file "/path/Script1.sql"
**Below error in Script2**
SP2-0310: unable to open file "/path/Script2.sql"
My Scripts have run
4

2 に答える 2

1

確かに、SQLPlus の戻りコードは私の経験から常に 0 です。そのため、以前のプロジェクトで私がしなければならなかったことを行うことをお勧めします。スクリプトの出力をファイルにリダイレクトし、それを解析して SPx-xxxx または ORA-xxxx 式を見つけます。エラー。

于 2013-06-28T07:29:07.480 に答える