エラーの処理¶
外部リソース(データベースサーバーなど)に接続すると、エラーが発生します。コードには、これらのエラーを処理する方法を含める必要があります。 JDBCとAdvanced Server JDBCコネクターの両方は、さまざまなタイプのエラー処理を提供します。 ListEmployeesクラスの例は、 try/catchブロックを使用してエラーを処理する方法を示しています。
JDBCオブジェクトがエラー( SQLException型またはSQLExceptionから派生した型のオブジェクト)をスローすると、 SQLExceptionオブジェクトは3つの異なるエラー情報を公開します。
- エラーメッセージ。
- SQLの状態。
- ベンダー固有のエラーコード。
この例では、次のコードはエラーが発生した場合にこれらのコンポーネントの値を表示します。
System . out . println ( "SQL Exception: " + exp . getMessage ());
System . out . println ( "SQL State: " + exp . getSQLState ());
System . out . println ( "Vendor Error: " + exp . getErrorCode ());
たとえば、サーバーが指定されたホストに存在しないデータベースに接続しようとすると、次のエラーメッセージが表示されます。
SQL Exception : FATAL : database "acctg" does not exist
SQL State : 3 D000
Vendor Error : 0
