資料庫操作無非就是增、删、改、查。這篇主要介紹增、删、改。
Mongodb插入操作很簡單,使用關鍵字“insert”。執行個體:
使用insert關鍵字,裡面設定文檔。如果文檔中沒有“_id”,Mongodb會自動生成。
當執行插入操作時,資料庫會校驗是否包含“_id”鍵,并且文檔不超過4MB,除此之外,不做其他檢查。這樣使得資料庫更加安全,遠離注入式攻擊(Mongodb在插入時不執行代碼)。
remove可以接受一個查詢文檔作為可選參數,給定參數以後,隻有符合條件的文檔才會被删除。如果沒有帶參數,那麼就是删除集合中的所有文檔,但是不會删除集合本身,原來的索引也會保留。
文檔存入資料庫後,可以使用update方法來修改它,update有兩個參數,一個是查詢文檔,用來找出要更新的文檔,另一個是修改器文檔,描述對找到的文檔做哪些修改。更新操作時原子的,若是兩個更新同時發生,先到達伺服器的先執行,接着執行另一個。

修改資料方式一代碼
$set和$unset
$set用來指定一個鍵的值。如果鍵不存在,則建立它。可以用來修改值,數組,内嵌文檔。
$unset用來解除安裝一個鍵值對。
$unset代碼
更新數字
$inc用來增加鍵值,鍵不存在時建立
數組修改器
$push會向已有的數組末尾加入一個元素,要是沒有就建立數組
$pop可以從數組任何一端删除元素。{$pop:{key:1}}從數組末尾删除,{$pop:{key:1}}則從頭部删除
$pull基于特定條件删除
數組定位
數組定位可以使用位置或者定位操作符“$”
數組下标都是從0開始,是以可以使用下标直接作為鍵來選擇元素
使用upsert(update or insert)
upsert是一種特殊的更新,要是沒有文檔符合更新要求,就會以這個條件和更新文檔做為基礎建立一個新的文檔。如果找到比對的文檔,則正常更新。update的第三個參數表示是否使用upsert更新
更新多個文檔
預設情況下,更新隻對符合條件的第一個文檔進行修改,如果有多個符合條件的文檔,其餘文檔就沒有變化。如果想要更新所有比對條件的文檔,就要設定第四個參數為true
update的四個參數描述:
1.需要更新文檔比對的條件
2.需要更新的資料
3.是否采用upsert方式更新:預設false
4.是否使用比對條件的文檔都修改:預設false
當神已無能為力,那便是魔渡衆生