mongodb增刪改查

關於database的基礎命令

查看當前的數據庫:db
查看全部的數據庫:show dbs /show databases
切換數據:use db_name
刪除當前的數據庫:db.dropDatabase()正則表達式

關於集合的基礎命令

不手動建立集合:
向不存在的集合中第一次加入數據時,集合會被建立出來 手動建立集合:數據庫

db.createCollection(name, options)
db.createCollection("stu")
db.createCollection("sub", {capped:true,size:10})

參數capped:默認值爲false表示不設置上限,值爲true表示設置上限
參數size:當capped值爲true時,須要指定此參數,表示上限大小,當文檔達到上限時,會將以前的數據覆蓋,單位爲字節
查看集合:show collections 刪除集合:db.集合名稱.drop()express

數據類型

Object ID: 文檔ID
String: 字符串,最經常使用,必須時有效的UTF-8
Boolean: 存儲一個布爾值,true或false
Integer: 整數能夠時32位 Double: 存儲浮點值
Arrays: 數組或列表,多個值存儲到一個鍵
Object: 用戶嵌入式的文檔,即一個值爲一個文檔
Null: 存儲Null值
Timestamp: 時間戳,表示1970-1-1到如今的總秒數
Date: 存儲當前日期或時間的UNIX時間格式數組

1 Double 浮點型 
2 String UTF-8字符串均可表示爲字符串類型的數據 
3 Object 對象,嵌套另外的文檔 
4 Array 值的集合或者列表能夠表示成數組 
5 Binary data 二進制 
7 Object id 對象id是文檔的12字節的惟一 ID 系統默認會自動生成 
8 Boolean 布爾類型有兩個值TRUE和FALSE 
9 Date 日期類型存儲的是從標準紀元開始的毫秒數。不存儲時區 
10 Null 用於表示空值或者不存在的字段 
11 Regular expression 採用js 的正則表達式語法 
13 JavaScript code 能夠存放Javasript 代碼 
14 Symbol 符號 
15 JavaScript code with scope 
16 32-bit integer 32位整數類型 
17 Timestamp 特殊語義的時間戳數據類型 
18 64-bit integer 64位整數類型

注意點

  • 建立日期語句以下:參數的格式爲YYYY-MM-DD
    new Date('2018-10-14')
  • 每個文檔都有一個屬性,爲_id,保證每一個文檔的惟一性
  • 能夠本身去設置_id插入文檔,若是沒有提供,那麼MongoDB爲每一個文檔提供了一個獨特的_id,類型爲objectID
  • objectID是一個12字節的十六進制數:
    前4個字節爲當前時間戳
    接下來3個字節的機器ID
    接下來的2個字節中MongoDB的服務進程id
    最後3個字節是簡單的增量值

插入

  • db.集合名稱.insert(document)
  • db.stu.insert({'name':'gj',gender:1})
  • db.stu.insert({_id:"20181014",name:'gj',gender:1})
  • 插入文檔時,若是不指定_id參數,MangoDB會爲文檔分配一個惟一的ObjectID

保存

  • db.集合名稱.save(document)
  • 若是文檔的_id已經存在則修改,若是文檔的_id不存在則添加

更新

db.集合名稱.update(<query>,<update>,{multi:<boolean>})app

參數query:查詢條件 參數update:更新操做符
參數multi:可選,默認時false,表示只更新找到第一條記錄,spa

db.stu.update({name:'hr'},{name:'mnc'}) 更新一條
db.stu.update({name:'hr'},{$set:{name:'hys'}}) 更新一條
db.stu.update({},{$set:{gender:0}},{multi:true}) 更新所有code

注意:"multi update only works with $ operators"

刪除

db.集合名稱.remove(<query>, {justOne:<boolean>})對象

參數query:可選,刪除的文檔的條件 參數justOne:可選,若是設爲true或1,則只刪除一條,默認false,表示刪除多條進程

相關文章
相關標籤/搜索