不知道怎麼回事,筆記2變到草稿裏去了
mongodb 學習筆記 02 – CURD操作
CURD代表創建(Create)、更新(Update)、讀取(Read)和刪除(Delete)操作
創建庫
直接 use 庫名 然後創建collection 就可以創建庫
創建collecion
db.createCollection("collectionName")
隱式創建collection
db.collectionName.insert({xxxxxx})
刪除collection
db.collectionName.drop()
刪除數據庫
db.dropDatabase()
插入數據
db.collectionName.insert({xxxxxx})
默認的會自動加上 “_id” 字段,如果不想自動,你可以自己在插入數據中指定”_id” 字段的值
一次性可以插入多條數據
db.collectionName.insert(( {xxx },{xxx },{xxx }))
刪除數據
db.collectionName.remove(查詢表達式,選項)
選項:{justOne:true/false}默認false
db.stu.remove() 把stu文檔下的內容全部刪掉
db.stu.remove({name:’billvsme’}) 把stu文檔下name爲”billvsme”的信息都刪掉
db.stu.remove({name:’billvsme’}, true) 加true, 表示只刪除其中一行
查找數據
db.stu.find(查詢表達式,查詢列)
db.stu.find() 顯示stu文檔下的所有數據
db.stu.find({name:’billvsme’}) 顯示stu文檔下name爲”billvsme”的信息
db.stu.find({ },{name:true}) 顯示name列
更新數據
db.collectionName.update(查詢表達式,新值,選項)
選項:{upsert:true/false,multi:true/false}
upsert :如果爲true,當查詢不存在時,就插入新值,默認爲false
multi: 如果爲true,表示匹配多有的,默認爲false
db.stu.update({name:’billvsme’},{name:’zhengkai’,age:’22’}) 匹配出name=’billvsme’的一條信息,然後改成 {name:’zhengkai’,age:’22’} (注意原來的內容會被刪除,被替換,而不是修改)
更新數據中的某些項
db.stu.update({name:’billvsme’},{$set:{age:23}}) 匹配出name=’billvsme’的一條信息,然後把它的age改成23
這裏用到了$set
還有類似的:
- $inc 增長 db.stu.update({name:’billvsme’},{$inc:{age:2}}) age增加2
- $rename 重命名 db.stu.update({name:’billvsme’},{$rename:{name:”username”}}) 把name字段重命名成username
- $setOnInsert 當upsert時,設置字段的值
- $unset 刪除指定的列 db.stu.update({name:’billvsme’},{$unset:{age:1}}) 刪除age字段