在 MongoDB 集合中更改主鍵?


要更改主鍵,您需要先刪除它。使用 forEach() 及 delete 刪除,然後獲取一個新的主鍵。讓我們建立一個帶有檔案的集合 −

> db.demo41.insertOne({"StudentName":"Carol"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e25ce4acfb11e5c34d898e3")
}

藉助 find() 方法顯示集合中的所有檔案 −

> db.demo41.find();

這將生成以下輸出 −

{ "_id" : ObjectId("5e25ce4acfb11e5c34d898e3"), "StudentName" : "Carol" }

以下是更改 MongoDB 集合上主鍵的查詢 −

> var next = db.demo41.find()
>
> next.forEach(function(s) {
...    var prevId=s._id;
...    delete s._id;
...    db.demo41.insert(s);
...    db.demo41.remove(prevId);
... });

讓我們再次檢查主鍵 −

> db.demo41.find();

這將生成以下輸出,顯示一個新主鍵 −

{ "_id" : ObjectId("5e25cee5cfb11e5c34d898e4"), "StudentName" : "Carol" }

更新於: 2020 年 4 月 2 日

1K+ 人次瀏覽

啟動您的 職業生涯

完成該課程獲取認證

Get Started
廣告
© . All rights reserved.