私が実行してpostgresのドライバ(LIB/PQ)を使用してデータベースを削除しようとしている:Golang postgresエラー定数?
db.Exec("DROP DATABASE dbName;")
をしかし、私はエラーを受信したかどうかに基づいて異なる条件をしたいと思いますが何かありますまたはデータベースが存在しないというエラーです。
私の質問は、 "データベースは存在しません"というエラーメッセージが返されるかどうかを確認するために使用できる定数変数などですか、エラー文字列を手動で解析する必要がありますか?
私はドキュメントを見ようとしましたが、「データベースが存在しません」というものが見つかりませんでした。しかし、私はこのリストを見つけました:https://www.postgresql.org/docs/9.3/static/errcodes-appendix.html
多分それは他のエラーコードの下で合っていますか?また、Postgresドライバを使ってエラーコードを取得して比較する意味的に正しい方法はわかりません。私はこの?:
if err.ErrorCode != "xxx"
はありがとうのような何かを行う必要があります推測します。
データベースを削除しようとする前にデータベースが存在するかどうかチェックしたくない理由は何ですか? – Nicarus
それは受け入れ可能な解決策でもありますが、私はそれを行うことができないことを認識していませんでした:-)その質問はありますか?確かに – b0xxed1n
。 pg_databaseオブジェクトをチェックしてください。 'SELECT TRUE AS result from pg_database WHERE datname = 'abc';' – Nicarus