MongoDB學(xué)習(xí)記錄(一)
MongoDB簡(jiǎn)介
關(guān)于MongoDB,是一個(gè)我上初中出現(xiàn)的東西瘾英,就是說(shuō)浩村,它還沒(méi)我大露戒,所以我覺(jué)得描验,該好好介紹一下它白嘁。
MongoDB是所謂的NOSQL
的一種數(shù)據(jù)庫(kù)。它是基于分布式的文件系統(tǒng)出現(xiàn)的一個(gè)集合性數(shù)據(jù)庫(kù)膘流。因?yàn)樵谒^信息浪潮中权薯,大量數(shù)據(jù)都是不按一定格式出現(xiàn)的,所以睡扬,平常的面向關(guān)系的數(shù)據(jù)庫(kù)盟蚣,如mysql
等對(duì)于存儲(chǔ)該類數(shù)據(jù)就捉襟見(jiàn)肘了。這時(shí)候卖怜,面向集合的數(shù)據(jù)庫(kù)思想開(kāi)天辟地的出現(xiàn)了屎开。
對(duì)于MongoDB而言,MongoDB不約束信息的格式马靠,只是將信息以一種文檔的方式進(jìn)行存儲(chǔ)奄抽,MongoDB不定義信息的字段,而通過(guò)鍵-值
的方式來(lái)存儲(chǔ)所有信息甩鳄,這樣就更加的容易存儲(chǔ)現(xiàn)代的信息逞度。
MongoDB的基本操作
-
數(shù)據(jù)庫(kù)及集合的建立
對(duì)應(yīng)Mysql中的數(shù)據(jù)庫(kù)與表,MongoDB中包含了有一個(gè)數(shù)據(jù)庫(kù)和集合
的關(guān)系妙啃。因?yàn)樵贛ongoDB中档泽,所有的信息都被稱為文檔
,所以揖赴,存儲(chǔ)文檔的容器就被稱之為集合馆匿。
在MongoDB中,沒(méi)有特定的命令去創(chuàng)建數(shù)據(jù)庫(kù)和集合燥滑,我們只需要利用use
命令去使用數(shù)據(jù)庫(kù)與集合渐北,MongoDB就可以直接使用數(shù)據(jù)庫(kù)和集合。
-
文檔的存儲(chǔ)
文檔的存儲(chǔ)有以下2種方式- insert函數(shù)
- save函數(shù)
查詢的語(yǔ)句:
db.[集合名].(insert/save)(文檔內(nèi)容)
-
文檔更新
更新文檔的語(yǔ)句:db.[集合名]铭拧。update([目標(biāo)條件],{$set:[更新數(shù)據(jù)]},(upsert/multi/writeConcern))
-
upsert
:可選赃蛛,這個(gè)參數(shù)的意思是恃锉,如果不存在update的記錄,是否插入objNew,true為插入呕臂,默認(rèn)是false淡喜,不插入。 -
multi
:可選诵闭,mongodb 默認(rèn)是false,只更新找到的第一條記錄炼团,如果這個(gè)參數(shù)為true,就把按條件查出來(lái)多條記錄全部更新。 -
writeConcern
:可選疏尿,拋出異常的級(jí)別瘟芝。
-
-
數(shù)據(jù)庫(kù)和文檔的刪除
- 文檔的刪除
刪除文檔的語(yǔ)句:db.[集合名].remove([目標(biāo)條件],(justOne/writeConcern))
- 數(shù)據(jù)庫(kù)的刪除
刪除數(shù)據(jù)庫(kù)的語(yǔ)句:db.dropDatabase()
- 文檔的刪除