Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MongoDB重命名字段/键_Mongodb_Insert_Document_Insert Update - Fatal编程技术网

MongoDB重命名字段/键

MongoDB重命名字段/键,mongodb,insert,document,insert-update,Mongodb,Insert,Document,Insert Update,我想在MongoDB中更改文档中的字段名(只是字段名,而不是值)。该文档如下所示,在user=Soham的集合中只有一个文档: {_id : ObjectId(xxxxxxxxxxxx), user : "Soham", age : 29 } 现在我想将名为“user”的字段更改为“name”,但不更改字段的值。因此,在mongo shell中,我编写了以下命令: var soh = db.user.find({"user":"Soham"}); soh.name = soh.user;

我想在MongoDB中更改文档中的字段名(只是字段名,而不是值)。该文档如下所示,在user=Soham的集合中只有一个文档:

{_id : ObjectId(xxxxxxxxxxxx),
 user : "Soham",
 age  : 29
}
现在我想将名为“user”的字段更改为“name”,但不更改字段的值。因此,在mongo shell中,我编写了以下命令:

var soh = db.user.find({"user":"Soham"});
soh.name = soh.user;
delete soh.user;
db.user.update({"user":"Roshan"},soh);
当我运行update命令时,它会向我抛出错误。我不知道我哪里出了问题,因为我是MongoDB的新手。感谢您的帮助。

请使用操作员

因此,在mongo shell中,要更新单个文档:

db.user.update( { _id: ObjectId(xxxxxxxxxxxx) }, { $rename: { 'user': 'name'} } )
更新所有文档

db.user.updateMany( {}, {$rename: { "user": "name" } } )
使用运算符

因此,在mongo shell中,要更新单个文档:

db.user.update( { _id: ObjectId(xxxxxxxxxxxx) }, { $rename: { 'user': 'name'} } )
更新所有文档

db.user.updateMany( {}, {$rename: { "user": "name" } } )

有一个操作员

db.user.updateMany( {}, { $rename: { "user": "name" } } )

有一个操作员

db.user.updateMany( {}, { $rename: { "user": "name" } } )

如何从Mongoshell复制ObjectId(而不是编写)?我正在尝试选择它,但无法。。有什么想法吗?如果有帮助,请将此标记为答案。我如何从Mongoshell复制ObjectId(而不是编写)?我正在尝试选择它,但无法。。有什么想法吗?如果有帮助,请将此标记为答案。我如何从Mongoshell复制ObjectId?我正在尝试选择它,但无法。。有什么主意吗?你可以试试这样的
var cursor=db.user.find();while(cursor.hasNext()){var doc=cursor.next();print(“\u id:+doc.\u id);}
。更多,谢谢你!我试图将一个新的嵌入文档添加到现有文档中。当前的文档结构是{u id:ObjectId(xxxxxxx),名称:“Soham”,年龄:10}。正在尝试将地址文档地址:{city:“XYZ”,zip:1234}嵌入上述文档。我执行了以下步骤var a=db.names.find({“name”:“Soham”});a、 地址={城市:“XYZ”,邮编:1234};更新({name:“Soham”},a);当我运行它时,它抛出了错误。这正是克里斯蒂娜·乔多罗(kristina chodorow)在书中给出的步骤,因此不确定出了什么问题。如果你知道答案,请告诉我。提前感谢。这是插入嵌入文档的方式
db.names.update({name:“Soham”},{$set:{“address.city”:“zzz”,“address.zip”:1234}})
。欲了解更多信息。如果您看到更多问题,请创建一个新问题,因为该问题不属于此处。如何从Mongoshell复制ObjectId?我正在尝试选择它,但无法。。有什么主意吗?你可以试试这样的
var cursor=db.user.find();while(cursor.hasNext()){var doc=cursor.next();print(“\u id:+doc.\u id);}
。更多,谢谢你!我试图将一个新的嵌入文档添加到现有文档中。当前的文档结构是{u id:ObjectId(xxxxxxx),名称:“Soham”,年龄:10}。正在尝试将地址文档地址:{city:“XYZ”,zip:1234}嵌入上述文档。我执行了以下步骤var a=db.names.find({“name”:“Soham”});a、 地址={城市:“XYZ”,邮编:1234};更新({name:“Soham”},a);当我运行它时,它抛出了错误。这正是克里斯蒂娜·乔多罗(kristina chodorow)在书中给出的步骤,因此不确定出了什么问题。如果你知道答案,请告诉我。提前感谢。这是插入嵌入文档的方式
db.names.update({name:“Soham”},{$set:{“address.city”:“zzz”,“address.zip”:1234}})
。欲了解更多信息。如果您看到更多问题,请创建一个新问题,因为此问题不属于此处。