MongoDB
 Computer >> コンピューター >  >> プログラミング >> MongoDB

MongoDBでコレクション名を変更する方法|renameCollection()メソッドの使い方を解説

MongoDBで既存のコレクションの名前を変更したい場合は、renameCollection()メソッドを使用します。ドキュメントやインデックスをそのまま維持したまま、コレクション名だけを簡単に変更できる便利なメソッドです。

renameCollection()の基本構文

コレクション名を変更するための基本構文は以下のとおりです。

db.旧コレクション名.renameCollection('新コレクション名');

実行例:sampleデータベースで試してみる

それでは、実際に「sample」データベースのコレクション名を変更してみましょう。まず、対象のデータベースに切り替え、現在存在するコレクションの一覧を確認します。

> use sample;
switched to db sample
> show collections;

上記コマンドを実行すると、以下のようにコレクションの一覧が表示されます。

copyThisCollectionToSampleDatabaseDemo
deleteDocuments
deleteDocumentsDemo
employee
informationAboutDelete
internalArraySizeDemo
prettyDemo
selectWhereInDemo
sourceCollection
updateInformation
userInformation

コレクション名を変更する

ここでは、「informationAboutDelete」というコレクションの名前を「deleteSomeInformation」に変更します。次のクエリを実行してください。

> db.informationAboutDelete.renameCollection('deleteSomeInformation');
{ "ok" : 1 }

実行結果として{ "ok" : 1 }が返されれば、名前の変更は正常に完了しています。

変更後のコレクション一覧を確認する

最後に、show collectionsを再実行して、コレクション名が正しく変更されたかどうかを確認しましょう。

> show collections;

出力結果は以下のとおりです。「informationAboutDelete」が一覧から消え、代わりに「deleteSomeInformation」が表示されていることがわかります。

copyThisCollectionToSampleDatabaseDemo
deleteDocuments
deleteDocumentsDemo
deleteSomeInformation
employee
internalArraySizeDemo
prettyDemo
selectWhereInDemo
sourceCollection
updateInformation
userInformation

renameCollection()を使う際の注意点

  • 変更先のコレクション名がすでに存在する場合、そのままではエラーになります。第2引数にtrueを指定すると、既存のコレクションを削除してからリネームできます(例:db.oldColl.renameCollection('newColl', true))。
  • このメソッドによるリネームは、基本的に同じデータベース内でのみ有効です。別のデータベースへ移動させたい場合は、db.adminCommand()renameCollectionコマンドを実行します。
  • 名前を変更しても、ドキュメントデータやインデックスはそのまま引き継がれるため、データの再投入は不要です。
  1. MongoDBでドキュメントのフィールドにアクセスする方法|find()とプロジェクションの使い方

    MongoDBでドキュメント内のフィールドにアクセスするには、find()メソッドを使用します。この記事では、実際にコレクションを作成し、ドキュメントを挿入したうえで、特定のフィールドだけを取得する方法をサンプルコード付きで解説します。 コレクションの作成とドキュメントの挿入 まず、サンプル用のコレクション「demo565」を作成し、3件のドキュメントを挿入します。insertOne()メソッドを使って、1件ずつ登録していきましょう。 > db.demo565.insertOne( ... { ... id:101, ... Name:David, ... Countr

  2. MongoDBでコレクションの名前を変更する方法(renameCollectionの使い方)

    MongoDBで既存のコレクションの名前を変更したい場合、renameCollection()メソッドを使用します。この記事では、実際にコレクションを作成し、その名前を変更するまでの手順を順番に解説します。1. ドキュメントを含むコレクションを作成するまず、insertOne()メソッドを使ってサンプルドキュメントを挿入し、コレクション「demo690」を作成します。> db.demo690.insertOne({_id:101,Name:Sam}); { acknowledged : true, insertedId : 101 } > db.demo690.insertOne(