MongoDB基本操作
Mongo自带shell客户端:
$ mongo
> show dbs show database names
> db
查看当前数据库的名称
> show collections
显示当前数据库的所有集合
> use foolbar
切换到foolbar数据库,如果foolbar数据库不存在,会在该数据第一次插入之后创建
> show collections;
显示当前数据库中有哪些集合,起初为空
>db.blog.insert({"title1":"instrduce of mongo"});
WriteResult({ "nInserted" : 1 })
第一次插入数据会创建数据库(集合) 插入的数据是一个文档
> db.blog.find()
{ "_id" : ObjectId("5503ecd83853a67e204962ae"), "title1" : "instrduce of mongo" }
查找当前数据库中blog集合的所有文档
> db.blog.insert({"docment":"hello mongoDB!"});
WriteResult({ "nInserted" : 1 })
> db.blog.find()
{ "_id" : ObjectId("5503ecd83853a67e204962ae"), "title1" : "instrduce of mongo" }
{ "_id" : ObjectId("5503ed873853a67e204962af"), "docment" : "hello mongoDB!" }
> db.blog.insert({"title" : "mytest", "name" : "pc"});
WriteResult({ "nInserted" : 1 })
> db.blog.insert({"title" : "mytest", "name" : "pc"});
WriteResult({ "nInserted" : 1 })
> db.blog.insert({"name" : "xwp"});
WriteResult({ "nInserted" : 1 })
> db.blog.insert({"name" : "xwp"});
WriteResult({ "nInserted" : 1 })
> db.blog.find()
{ "_id" : ObjectId("550247c18976c0e0b467e800"), "title" : "mytest", "name" : "pc" }
{ "_id" : ObjectId("550248468976c0e0b467e801"), "name" : "xwp" }
{ "_id" : ObjectId("5503ecd83853a67e204962ae"), "title1" : "instrduce of mongo" }
{ "_id" : ObjectId("5503ed873853a67e204962af"), "docment" : "hello mongoDB!" }
{ "_id" : ObjectId("5503edee3853a67e204962b0"), "title" : "mytest", "name" : "pc" }
{ "_id" : ObjectId("5503ee013853a67e204962b1"), "name" : "xwp" }
> db.blog.remove({_id : ObjectId("550247c18976c0e0b467e800")});
WriteResult({ "nRemoved" : 1 })
从当前数据库中的blog集合中移除_id为ObjectId("550247c18976c0e0b467e800")的文档
> db.blog.find()
{ "_id" : ObjectId("550248468976c0e0b467e801"), "name" : "xwp" }
{ "_id" : ObjectId("5503ecd83853a67e204962ae"), "title1" : "instrduce of mongo" }
{ "_id" : ObjectId("5503ed873853a67e204962af"), "docment" : "hello mongoDB!" }
{ "_id" : ObjectId("5503edee3853a67e204962b0"), "title" : "mytest", "name" : "pc" }
{ "_id" : ObjectId("5503ee013853a67e204962b1"), "name" : "xwp" }
> show collections;
blog
> db.createCollection("xunlei");
{ "ok" : 1 }
在当前数据库创建一个指定名称的集合
> show collections;
blog
xunlei
>db.blog.findOne()
{ "_id" : ObjectId("550248468976c0e0b467e801"), "name" : "xwp" }
这个shell函数findOne会返回一个文档 而find函数会返回最多二十个文档.更多区别我们在后面详细介绍.
>db.blog.count()
5
统计集合blog所有文档数量
ctrl+c退出mongo客户端
以上为【考点】
文档
文档是一个键值(key-value)对(即BSON,基于JSON格式,一个扩展格式)。
如:
{"site":"www.itcast.com", "name":"传智播客"}
注意事项:
- 文档中的键/值对是有序的。
{ "_id" : ObjectId("57d77c7774b8b0c4a926251c"), "site" : "www.itcast.com", "name" : "传智播客" }
{ "_id" : ObjectId("57d77c9074b8b0c4a926251d"), "name1" : "www.itcast.com", "site1" : "传智播客" }
- 文档中的值不仅可以是在双引号里面的字符串,还可以是其他几种数据类型(甚至可以是整个嵌入的文档)。
{ "_id" : ObjectId("57d77cb774b8b0c4a926251e"), "name1" : "www.itcast.com", "site1" : 12 }
{ "_id" : ObjectId("57d77ce474b8b0c4a9262520"), "site1" : { "pro" : "hebei" } }
- MongoDB区分类型和大小写。
{ "_id" : ObjectId("57d77cb774b8b0c4a926251e"), "Site1" : "www.itcast.com", "site1" : 12 }
- MongoDB的文档不能有重复的键。
db.itcast.insert({"site1":"www.itcast.com", "site1":{'pro':'hebei'}})
- 文档的键是用双引号标识的字符串(常见的);除个别例外外,可用任务UTF-8字符。要求如下:
键不能含有\0(空字符),这个字符用来标识键的结尾
.和$被保留,存在特别含义,最好不要用来命名键名
"_"开头的键是保留的,建议不要使用。
当前内容版权归 piaosanlang 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 piaosanlang .