选择总是有理由的
茫茫sql,nosql我为何偏偏中意你?!
吼吼,听着,本宝宝要告白了。
哦,你如四月融融微风一般温柔又善变。
~^~这个理由够不够?!
咳咳咳,矫情了哈!
模式较少,是一种文档数据库,一个集合可以包含各种不同的文档。
没有复杂的连接功能。
非常非常易于扩展。
对于我,这三个理由,哇咔咔~~~~跟我回家吧!
启动MongoDB
同时再启动mongo
飞吧!我的Mongogo ( > 3 < )
经过一番摸索,Mongo真的是一款超级省心的数据库
在这里,我们需要去理解几个名词:集合、文档、_id
集合呢,就是集合(笑哭,这是解释么?狗屎粑粑),哎呀,其实稍微有点sql的同志们都理解,集合是一个盒子,那么是什么的集合呢,soga,就是如下的文档。而文档又是什么呢,对应在sql里就是各种表。这下就清楚了吧。_id对应在sql里就是主键,有且仅有一个,你不指定,Mongo会自动给你设置。Mongo官网在插入文档时就没指定,我也觉得不必指定
_id 是一个 12 字节长的 16 进制数,这 12 个字节的分配如下:
_id: ObjectId(4 bytes timestamp, 3 bytes machine id, 2 bytes process id, 3 bytes incrementer)
非常规范,你说你还去多事干啥。
Now,让我们快速新建一个集合并写写入文档
创建数据库
use <your name for database>
直接插入文档
Mongo的神奇之处,无论是创建数据库还是集合,只要写入即可,如果不存在该数据库或者集合,Mongo都会自动生成。
这里我们就不再创建集合,直接插入文档。
> db.userMassages.insert({
... 'title':'userMassagesList',
... 'description':'data for user massages content',
... 'by':'Liz',
... 'massages':[{
... 'username':'Liz1',
... 'content':'spring is here.where are you?',
... 'time':'2016-04-07 13:52:12'
... },{
... 'username':'Liz2',
... 'content':'this is my passion for technology.',
... 'time':'2016-04-07 14:55:35'
... },{
... 'username':'Liz3',
... 'content':'miss,miss.',
... 'time':'2016-04-07 16:42:33'
... }]
... })
返回
WriteResult({ "nInserted" : 1 })
查看文档
> db.userMassages.find()
这样查看文档的效果并不美好。
推荐这样
db.userMassages.find().pretty()
删除一个文档
db.userMassages.remove({'title':'userMassagesList'})
如果有多个记录,而你只想删除第一条记录,那么就设置 remove() 方法中的 justOne 参数:
db.userMassages.remove({'title':'userMassagesList'},1)
删除数据库
show dbs
db <your database Name>//不能少
db.dropDatabase()