最近、アプリケーションをデータベースのユーザー名とパスワードを構成ファイルに保存することから変更しました(gaspパスワードは構成ファイルにプレーンテキストで保存されます)。
アプリケーションは、続行する前にユーザーにユーザー名とパスワードの入力を求めるようになりました。
新しいバージョンのアプリケーションは、に問い合わせてSQLException
、例外の原因(無効なユーザー名またはパスワード、データベースサーバーに到達できない、接続タイムアウトなど)を特定し、次に何をするかを決定できるようにする必要があります(ユーザーに修正を求めるユーザー名とパスワード、ネットワークの問題が分類されたら後で再試行するようにユーザーに指示し、目に見えない形で再接続するなど)。
これら(およびその他の)原因に関連するerrorCodes(SQLException.getErrorCode())を見つけようとすることはSQLException
ほぼ不可能であり、推測を余儀なくされました(これは時には危険な場合があります)。
Java APIのドキュメントによると、これはベンダー固有です。
誰かが設定できるエラーコードを持っていますSybase JConnect JDBC drivers
か?
JRE 1.5
jConnect for JDBC 2.0 (spec version 5.2)
Sybase IQ 12.7