mangodb基礎

首先講解較好的幾個文件:

簡書:https://www.jianshu.com/p/6df82d3f5c8a

菜鳥教程:http://www.runoob.com/mongodb/mongodb-replication.html

mangoDb一般是用類似於json的格式儲存並將資料儲存為一個文件,資料結構由鍵值(key:value)組成

mangoDB與資料庫的一些對比如下:

mangodb基礎

一個mangoDB可以建立多個數據庫,預設的資料庫名稱為db,該資料庫儲存在data目錄中。

一些命令:

show dbs:顯示資料庫列表

db:顯示當前的資料庫物件和集合

use local:連線到指定的local資料庫

一些命名規範:

資料庫名稱:

不能是空字串(“”)。

不得含有‘ ’(空格)、。、$、/、\和\0 (空字元)。

應全部小寫。

最多64位元組。

需要注意的是:

文件中的鍵/值對是有序的。

文件中的值不僅可以是在雙引號裡面的字串,還可以是其他幾種資料型別(甚至可以是整個嵌入的文件)。

MongoDB區分型別和大小寫。

MongoDB的文件不能有重複的鍵。

文件的鍵是字串。除了少數例外情況,鍵可以使用任意UTF-8字元。

文件鍵命名規範:

鍵不能含有\0 (空字元)。這個字元用來表示鍵的結尾。

.和$有特別的意義,只有在特定環境下才能使用。

以下劃線"_"開頭的鍵是保留的(不是嚴格要求的)。

集合

集合就是 MongoDB 文件組,類似於 RDBMS (關係資料庫管理系統:Relational Database Management System)中的表格。

集合存在於資料庫中,集合沒有固定的結構,這意味著你在對集合可以插入不同格式和型別的資料,但通常情況下我們插入集合的資料都會有一定的關聯性。

合法的集合名

集合名不能是空字串“”。

集合名不能含有\0字元(空字元),這個字元表示集合名的結尾。

集合名不能以“system。”開頭,這是為系統集合保留的字首。

使用者建立的集合名字不能含有保留字元。有些驅動程式的確支援在集合名裡面包含,這是因為某些系統生成的集合中包含該字元。除非你要訪問這種系統建立的集合,否則千萬不要在名字裡出現$。

建立資料庫: use DATABASE_NAME

刪除資料庫: a) 切換到指定的資料庫 b)db。dropDataBase()

刪除集合: a。 首先切換到指定資料庫 b,db。 集合名 。drop

查詢已有集合: show collections

插入: db。collection。insert

更新: db。collection。update/save ( query,set,upsert,muilt )

查詢: db。collection。find()

刪除: db。collection。remove()

查詢包含 “教”字的文件: db。collection。find({“title”:/ 教 /})

查詢以 “教”開頭的文件: db。collection。find({“title”:/^ 教 /})

查詢以教結尾的文件: db。collection。find({“title”:/ 教 $/})

db。collection。find({},{“title” : 1,_id : 0})。limit(2): 第一個 {} 相當於 where 條件,如果什麼都不寫的話就預設實現是顯示所有,第二個 {} 中指定哪 些列顯示 , 哪些列不顯示, 1 為顯示, 0 為不顯示

排序sort(1/0)1為升序,0為降序

建立索引 db。collection。createIndex(keys,option),keys表示要建立的索引欄位,1表示升序建立索引,-1表示降序建立索引,createIndex()接收可選引數,可選引數列表如下:

mangodb基礎

1、檢視集合索引

db。col。getIndexes()

2、檢視集合索引大小

db。col。totalIndexSize()

3、刪除集合所有索引

db。col。dropIndexes()

4、刪除集合指定索引

db。col。dropIndex(“索引名稱”)