看完前面的文章,你們應該把環境搭建好了,下面咱們就開始學習MongoDB的一些基本操做了。數據庫
首先咱們要了解的一些要點:json
MongoDB將數據存儲爲一個文檔,數據結構由鍵值對(key=>value)組成數組
MongoDB文檔相似於JSON對象,字段值能夠包含其餘文檔、數組、文檔數組服務器
其次就是SQL術語和MongoDB術語的對比:數據結構
學過MySQL的同窗就很好對比了,三個主要的:數據庫、集合、文檔app
集合就是MySQL中的表yii
文檔就是MySQL中的行學習
文檔:就是一個對象,由鍵值對構成,是json的擴展Bson形式。ui
{'name':'guojing','gender':'男'}
集合:相似於MySQL中的表,儲存多個文檔,結構不固定,如能夠儲存以下文檔在一個集合中。spa
{'name':'guojing','gender':'男'} {'name':'huangrong','age':'18'} {'book':'shuihuzhuan','heros':'108'}
數據庫:是一個集合的物理容器,一個數據庫中能夠包含多個文檔。
一個服務器一般有多個數據庫。
MongoDB使用use DATABASE_NAME命令來建立數據庫。若是指定的數據庫DATABASE_NAME不存在,則該命令將建立一個新的數據庫,不然返回現有的數據庫。
語法:
use DATABASE_NAME
若是要建立一個名稱爲newdb的數據庫,那麼使用use DATABASE_NAME語句將以下所示:
> use newdb switched to db newdb
輸入db命令就可查詢:
>db newdb
若是要檢查數據庫列表,請使用命令show dbs。
>show dbs local 0.000025GB test 0.00002GB
建立的數據庫newdb不在列表中。要顯示數據庫,須要至少插入一個文檔,空的數據庫是不顯示出來的。
>db.items.insert({"name":"yiibai tutorials"}) >show dbs local 0.00005GB test 0.00002GB newdb 0.00002GB
在 MongoDB 中默認數據庫是:test
。 若是您尚未建立過任何數據庫,則集合/文檔將存儲在test
數據庫中。
MongoDB中的db.dropDatabase()命令用於刪除現有的數據庫。
db.dropDatabase()
這將刪除當前所選數據庫。 若是沒有選擇任何數據庫,那麼它將刪除默認的test數據庫。
刪除例子:
首先,使用命令show dbs檢查可用數據庫的列表。
>show dbs local 0.00025GB newdb 0.0002GB test 0.00012GB >
若是要刪除新數據庫newdb
,那麼dropDatabase()
命令將以下所示:
>use newdb switched to db newdb >db.dropDatabase() >{ "dropped" : "newdb", "ok" : 1 } >
如今檢查數據庫列表
>show dbs local 0.00025GB test 0.0002GB >
MongoDB 的db.createCollection(name , options)方法用於在MongoDB 中建立集合。
語法:
db.createCollection(name, options)
在命令中,name是要建立的集合的名稱。options是一個文檔,用於指定集合的配置。
options參數是可選的,所以只須要指定集合的名稱。 如下是可使用的選項列表:
在插入文檔時,MongoDB首先檢查上限集合capped
字段的大小,而後檢查max
字段。
例子:
沒有使用選項的createCollection()方法的基本語法以下 :
>use test switched to db test >db.createCollection("mycollection") { "ok" : 1 } >
可使用命令show collections檢查建立的集合。
>show collections mycollection
如下示例顯示了createCollection()方法的語法,其中幾個重要選項
> db.createCollection("mycol", {capped : true, autoIndexId : true, size : 6142800, max : 10000 }) { "ok" : 1 } >
在MongoDB中,不須要建立集合。當插入一些文檔時,MongoDB 會自動建立集合。
>db.newcollection.insert({"name" : "yiibaitutorials"}) >show collections mycol newcollection mycollection >
MongoDB 的db.collection.drop()用於從數據庫中刪除集合。
語法:
db.COLLECTION_NAME.drop()
例子:
首先,檢查數據庫test中可用的集合。
>use test switched to db test > show collections mycol mycollection newcollection >
如今刪除名稱爲mycollection的集合。
>db.mycollection.drop() true >
再次檢查當前數據庫的集合列表,以下:
> show collections mycol newcollection >