Docs Menu
Docs Home
/
MongoDB マニュアル
/ / /

db.collection.renameCollection()

項目一覧

  • 定義
  • 動作
db.collection.renameCollection(target, dropTarget)

重要

mongosh メソッド

このページでは、mongosh メソッドについて説明します。ただし、データベースコマンドや Node.js などの言語固有のドライバーのドキュメントには該当しません

データベースコマンドについては、 renameCollectionコマンドを参照してください。

MongoDB API ドライバーについては、各言語の MongoDB ドライバー ドキュメントを参照してください。

コレクションの名前を変更します。renameCollectionデータベースコマンドのラッパーを提供します。

Parameter
タイプ
説明
target
string
コレクションの新しい名前。文字列を引用符で囲みます。詳細は、「命名制限」を参照してください。
dropTarget
ブール値
任意。trueの場合、 mongodではコレクションの名前を変更する前にrenameCollectiontargetが削除されます。デフォルト値はfalseです。

db.collection.renameCollection()メソッドは、特定のコレクションに関連付けられたメタデータを変更することにより、コレクション内で動作します。

追加の警告とメッセージについては、ドキュメント「renameCollection」を参照してください。

警告

db.collection.renameCollection()メソッドとrenameCollectionコマンドは、現在データを返しているクエリを中断するオープン カーソルを無効にします。

Change Streams の場合、db.collection.renameCollection() メソッドとrenameCollectionコマンドは、ソース コレクションまたはターゲット コレクションで開かれている既存の Change Streams無効化を作成します。

  • この方法には、次の制限があります。

バージョン 5.0 での変更

シャーディングされたクラスター内のシャーディングされたコレクションまたはシャーディングされていないコレクションの名前を変更すると、ソース コレクションとターゲット コレクションだけがすべてのシャードでロックされます。ソース コレクションとターゲット コレクションでのその後の操作は、名前変更操作が完了するまで待つ必要があります。

MongoDB でのロックの詳細については、「FAQ: 同時実行性」を参照してください。

renameCollection() は、操作している間、ソース コレクションとターゲット コレクションに対して排他ロックを取得します。コレクションに対する後続のすべての操作は、renameCollection() が完了するまで待機する必要があります。

mongodump--oplogdb.collection.renameCollection()で開始された は、ダンプ プロセス中にクライアントが を発行すると失敗します。詳しくは、 mongodump.--oplogを参照してください。

コレクション オブジェクトでdb.collection.renameCollection()メソッドを呼び出します。 例:

db.rrecord.renameCollection("record")

この操作により、 rrecordコレクションの名前がrecordに変更されます。ターゲット名(つまり、record )が既存のコレクションの名前である場合、操作は失敗します。

戻る

db.collection.remove

項目一覧