MongoDB入門
- 2020 年 12 月 19 日
- 筆記
一、什麼是MongoDB
MongoDB是一個跨平台的,面向文檔的資料庫。是介於關係型資料庫和非關係型資料庫之間,是非關係型資料庫當中功能最豐富,最像關係型資料庫的產品。(關係型資料庫是表與表之間有一對一,一對多,多對多的關係,非關係型資料庫沒有表之間的關係)
MongoDB的官網://www.mongodb.org/
二、MongoDB的特點:
對於下列的數據,我們適合用MongoDB來實現數據的存儲
1.數據量大
2.寫入操作頻繁
3.價值較低
三、MongoDB的體系結構
MongoDB的邏輯結構是一種層次結構。主要由:文檔(document)、集合(collection)、資料庫(database)這三部分組成。
四、MongoDB數據類型
基本數據類型
null:用於表示空值或者不存在的欄位,{「x」:null}
布爾型:布爾類型有兩個值true和false,{「x」:true}
數值:shell默認使用64為浮點型數值。{「x」:3.14}或{「x」:3}。對於整型值,可以使用NumberInt(4位元組符號整數)或NumberLong(8位元組符號整數),{「x」:NumberInt(「3」)}{「x」:NumberLong(「3」)}
字元串:UTF-8字元串都可以表示為字元串類型的數據,{「x」:「呵呵」}
日期:日期被存儲為自新紀元依賴經過的毫秒數,不存儲時區,{「x」:new Date()}
正則表達式:查詢時,使用正則表達式作為限定條件,語法與JavaScript的正則表達式相同,{「x」:/[abc]/}
數組:數據列表或數據集可以表示為數組,{「x」: [「a「,「b」,」c」]}
內嵌文檔:文檔可以嵌套其他文檔,被嵌套的文檔作為值來處理,{「x」:{「y」:3 }}
對象Id:對象id是一個12位元組的字元串,是文檔的唯一標識,{「x」: objectId() }
二進位數據:二進位數據是一個任意位元組的字元串。它不能直接在shell中使用。如果要將非utf-字元保存到資料庫中,二進位數據是唯一的方式。
程式碼:查詢和文檔中可以包括任何JavaScript程式碼,{「x」:function(){/…/}}