JavaでMongoDBのデータベースを削除(ドロップ)する方法
MongoDBの db.dropDatabase() コマンドは、既存のデータベースを削除するために使用されます。このコマンドを実行すると、現在選択中のデータベースが削除されます。なお、どのデータベースも選択していない状態で実行すると、デフォルトの test データベースが削除されてしまうため注意が必要です。
構文
db.dropDatabase()
Javaでのデータベース削除の手順
Javaでデータベースを削除するには、まず getDatabase() メソッドを使って対象のデータベースオブジェクトを取得します。その後、取得したオブジェクトに対して drop() メソッドを呼び出すことで、データベースを削除できます。
処理の流れ
- MongoClient を使ってMongoDBサーバーに接続する
- getDatabase() メソッドで削除したいデータベースのオブジェクトを取得する
- drop() メソッドを呼び出してデータベースを削除する
サンプルコード
import com.mongodb.MongoClient;
import com.mongodb.client.MongoDatabase;
public class DropingDatabase {
public static void main( String args[] ) {
// MongoDBクライアントを作成
@SuppressWarnings("resource")
MongoClient mongo = new MongoClient( "localhost" , 27017 );
// データベースを作成
mongo.getDatabase("myDatabase");
System.out.println("Databases created successfully");
// データベースを取得して削除
MongoDatabase database = mongo.getDatabase("myDatabase");
database.drop();
}
}実行結果
Database deleted successfully
補足ポイント
- drop() メソッドは対象のデータベースと、その中に含まれるすべてのコレクションおよびドキュメントを完全に削除します。この操作は元に戻せないため、実行前には十分に確認してください。
- 本番環境でこの操作を行う場合は、適切な権限管理とバックアップの取得を推奨します。
-
JavaでMongoDBの全データベース一覧を取得する方法
MongoDBでは、シェル上で show dbs コマンドを実行するだけで、サーバー内に存在するデータベースの一覧を簡単に確認できます。> show dbs admin config local myDatabase sampleDatabase students test testDBJavaアプリケーションからMongoDBに接続し、すべてのデータベース名を取得したい場合は、listDatabaseNames() メソッドを使用します。このメソッドは MongoIterable<String> 型のオブジェクトを返すため、拡張for文を使って各データベース名を1つずつ取り
-
JavaでMongoDBデータベース内のすべてのコレクションを一覧表示する方法
MongoDBでは、show collections コマンドを使うことで、データベースに存在するすべてのコレクションの一覧を表示できます。 例 たとえば、MongoDBデータベースに以下のように3つのコレクションを作成したとします。 > use sampleDatabase switched to db sampleDatabase > db.createCollection(students) { ok : 1 } > db.createCollection(teachers) { ok : 1 } > db.createCollection(sample) { o