JDBC経由で存在しないデータベースを作成したい。 MySQLとは異なり、PostgreSQLはcreate if not exists
構文をサポートしていません。これを達成する最良の方法は何ですか?PostgreSQL用に存在しない場合、CREATE DATABASEをシミュレートしますか?
アプリケーションはデータベースが存在するかどうかわかりません。チェックし、データベースが存在する場合はそれを使用する必要があります。したがって、目的のデータベースに接続することは理にかなっており、データベースが存在しないために接続が失敗した場合は、新しいデータベースを作成する必要があります(デフォルトのpostgres
データベースに接続してください)。私はPostgresから返されたエラーコードをチェックしましたが、同じ種類の関連するコードは見つかりませんでした。
これを達成するもう1つの方法は、postgres
データベースに接続し、目的のデータベースが存在するかどうかを確認し、それに応じて対処することです。もう1つはちょっと面倒です。
この機能をPostgresで実現する方法はありますか?
これを 'jdbc'を使って書くか、これをjavaコードに埋め込むにはどうすればいいですか? –
@AmanDeepGautam:これは単純なSQL文です。'stmt.executeQuery(query)'を使って他のものと同じように実行できるはずです。 –
残念ながら、9.3(少なくとも)はこれを好まない:「エラー:関数またはマルチコマンド文字列からのCREATE DATABASEを実行できない」 –