エラーコードを取得する
try {
// hogehoge
} catch(PostgresException ex) {
// 以下でエラーコードを取得する
Console.WriteLine(ex.sqlState);
}
エラーコードをハンドリングする
以下のように記載すると、エラーコードによって処理を分岐させることができるが…
try {
// hogehoge
} catch(PostgresException ex) {
// エラーコードのハンドリング
if (ex.sqlState == "23514") {
// fugafuga
}
}
PostgresErrorCodesにエラーコードがconstとして定義されているため、リテラルではなくPostgresErrorCodesを使用したほうが良さそう…
try {
// hogehoge
} catch(PostgresException ex) {
// エラーコードのハンドリング
if (ex.sqlState == PostgresErrorCodes.CheckViolation) {
// fugafuga
}
}
PostgresErrorCodesの内容は、公式ドキュメントからどうぞ。
Appendix A. PostgreSQL Error Codes
AppendixA.PostgreSQL Error Codes All messages emitted by the PostgreSQL server are assigned five-character error codes t...
コメント