向 集合 添加新文档
从 集合 里删除文档
更新 现有文档
1. 插入并保存文档
>db.foo.insert({"bar":"baz"})
这个操作会给文档增加一个"_id"键 (如果 原来没有这个键的话),然后保存到MongoDB中
>db.foo.find()
{"_id":ObjectId("4fdc779a89834bfb0bd267a3"),"bar":"baz"}
文档不能超过 4 MB , 可以 用 Object.bsonsize( 文档 ) 查看文档转换为 BSON 的大小 (以 字节 为 单位)
>post={"title":"MyBlogpost","content":"Here'smyblogpost.","date":
...newDate()}
{
"title":"MyBlogpost",
"content":"Here'smyblogpost.",
"date":ISODate("-06-16T12:19:25.163Z")
}
>Object.bsonsize(post)
77
2. 删除文档
db.foo.remove() 会删除foo集合中所有的文档,当不会删除集合本身,原来的索引也会保留。
>db.foo.findOne()
{"_id":ObjectId("4fdc779a89834bfb0bd267a3"),"bar":"baz"}
>showcollections
foo
system.indexes
>db.foo.remove()
>showcollections
foo
system.indexes
>db.foo.find()
>
remove() 函数可以接受 一个查询文档 作为可选 参数, 这样只有符合条件的参数 才被删除。
>post2={"title":"MyBlogpost2","content":"Here'smyblogpost2.","date":
...newDate()}
{
"title":"MyBlogpost2",
"content":"Here'smyblogpost2.",
"date":ISODate("-06-16T12:41:34.429Z")
}
>db.foo.insert(post2)
>db.foo.find()
{"_id":ObjectId("4fdc7e1889834bfb0bd267a4"),"title":"MyBlogpost","conte
nt":"Here'smyblogpost.","date":ISODate("-06-16T12:19:25.163Z")}
{"_id":ObjectId("4fdc7f2689834bfb0bd267a5"),"title":"MyBlogpost2","cont
ent":"Here'smyblogpost2.","date":ISODate("-06-16T12:41:34.429Z")}
>db.foo.remove({"title":"MyBlogpost2"})
>db.foo.find()
{"_id":ObjectId("4fdc7e1889834bfb0bd267a4"),"title":"MyBlogpost","conte
nt":"Here'smyblogpost.","date":ISODate("-06-16T12:19:25.163Z")}
>
remove 删除数据是永久性的,不能撤销,也不能恢复。
另一个 删除命令 db.runCommand({"drop":"foo"}) 。
3. 更新
最简单的方法 用一个新文档 替换原文档。 这种适用于结构变化较大的时候。
>user={"name":"joe",
..."friends":32,
..."enemies":2
...}
{"name":"joe","friends":32,"enemies":2}
>db.user.insert(user)
>db.user.find()
{"_id":ObjectId("4fdc893d89834bfb0bd267a6"),"name":"joe","friends":32,
"enemies":2}
例如:
{
"_id" : ObjectId("4fdc893d89834bfb0bd267a6"),
"name" : "joe" ,
"friends" : 32 ,
"enemies" : 2
}
改变为
{
"_id" : ObjectId("4fdc893d89834bfb0bd267a6"),
"username" : "joe" ,
"relationships" :
{
"friends" : 32 ,
"enemies" : 2
}
}
可以用update来替换文档:
>varjoe=db.user.findOne({"name":"joe"})
>joe.relationships={"friends":joe.friends,"enemies":joe.enemies};
{"friends":32,"enemies":2}
>joe.username=joe.name
joe
>deletejoe.name
true
>deletejoe.friends
true
>deletejoe.enemies
true
>db.user.find()
{"_id":ObjectId("4fdc893d89834bfb0bd267a6"),"name":"joe","friends":32,
"enemies":2}
>db.user.update({"name":"joe"},joe);
>db.user.find()
{"_id":ObjectId("4fdc893d89834bfb0bd267a6"),"relationships":{"friends":
32,"enemies":2},"username":"joe"}
>