2

呼び出しの開始時にデータベースを作成せずに、Java API を介して Mongo データベースの存在を確認する方法はありますか?

現在、Casbah (Scala Driver) を使用して Mongo インスタンスとやり取りしています

val mongo = MongoConnection(List(new ServerAddress("localhost",27017)))
val db = mongo.getDB("testXXX") 

APIgetDBはデフォルトでデータベースを作成するように見えますが、これが発生するのは望ましくありません。

testXXXが存在しない場合は、 Mongo にデータベースを作成させたくありませんが、代わりにコンシューマーとしてデータベースが存在するかどうかを判断させます。

MongoDB Java ドライバーまたは Casbah 経由でそのような API はありますか?

4

2 に答える 2

3

私は以下を使用しています(Casbah / Scalaでも):

val dbExists = !mongo.dbNames.contains("testXXX")
于 2013-06-28T01:14:19.713 に答える
2

デフォルトでは、データベースにコレクションを要求するまで、データベースはサーバー上に作成されません。

したがってval db = mongo.getDB("testXXX")、「testXXX」というデータベースは、MongoDB サーバー上に作成されず、次のようなものを呼び出すことができますdb.getCollection("myCollectionName")

于 2013-07-01T15:09:24.167 に答える