MongoDB實現(xiàn)增刪改查
一、增加
insert向數(shù)據(jù)庫中插入集合
插入一條記錄,傳入集合
db..insert() db.students.insert({name:"唐僧",age:60,gender:"M"})
插入多條記錄,傳入數(shù)組
db.students.insert([{name:"豬八戒",age:53,gender:"M"},{name:"沙僧",age:50,gender:"M"}])
默認生成時間戳id,確保數(shù)據(jù)唯一,原理是調(diào)用如下語句,可以自行指定id
默認:
ObjectId()
自行指定:
db.students.insert({_id:"001",name:"白骨精",age:60,gender:"W"})
insertOne向數(shù)據(jù)庫中插入集合
插入一個文檔對象,只能傳入一個文檔,不能傳入數(shù)組
db.students.insertOne({_id:"002",name:"鐵扇公主 ",age:60,gender:"W"})
insertMany向數(shù)據(jù)庫中插入集合
插入多個文檔對象,只能傳入一個數(shù)組,即使只存在一個文檔,不能傳入文檔
db.students.insertMany([{_id:"004",name:"牛魔王",age:60,gender:"M"},{_id:"005",name:"紅孩兒",age:60,gender:"M"}])
其實是對insert的拆分
二、查詢
查詢集合中所有符合條件的文檔
find進行查詢集合所有文檔
db.students.find(); db.students.find({});
find進行條件查詢
{}:表示集合中所有文檔;
{屬性:值} 查詢屬性是指定值的文檔
db.students.find({_id:"002"}); db.students.find({_id:"002",name:"劉德華"}); db.students.find({_id:"002"}).count(); ----查看查詢的文檔的數(shù)量 db.students.find({_id:"002"}).length();
find返回值為數(shù)組,可以通過下標(biāo)獲取對應(yīng)值
findOne進行條件查詢
findOne返回的為Object,可以用返回值.對象
查詢集合中符合條件的第一個文檔,最多一條文檔
db.students.findOne({name:"AideHua"});
三、修改
update(查詢條件,新對象)
db..update(查詢條件,新對象)
如:db.students.update({_id:"002"},{age:18}) 注意:將會用新對象{age:18}替換之前舊對象
修改前
修改后
update(查詢條件,{$set:修改文檔屬性})
db.students.update({_id:"004"},{$set:{age:180}})
修改操作符
set ------修改文檔指定屬性
unset------刪除文檔指定屬性(和值無關(guān))
默認只會修改一個
如果想要進行修改多個,指定可選參數(shù)multi
db.students.update({_id:"004"},{$set:{age:880}},{multi:true})
updateMany()
同時修改多個符合條件的文檔
匹配多少個,就會修改多少個的值
db.students.updateMany({_id:"004"},{$set:{age:180}})
updateOne()
修改一個符合條件的文檔
只會修改匹配的第一個
db.students.updateOne({_id:"004"},{$set:{age:180}})
replaceOne()
替換文檔
四、刪除
remove()
刪除符合條件的而所有文檔,默認刪除所有,刪除單個需要指定可選參數(shù)justOne為:true
刪除多個,默認情況
db.students.remove({name:"Liming"})
刪除單個
db.students.remove({name:"Liming"},true)
必須指定參數(shù),否則報錯,注意和find()區(qū)別
db.students.remove();//報錯
刪除所有文檔,但是集合還是存在的
db.students.remove({});
刪除集合,若是數(shù)據(jù)庫的最后一個人集合,那么數(shù)據(jù)庫也會被刪除
db.students.drop();
deleteOne()
刪除一個
db.students.deleteOne({name:"Liming"})
deleteMany()
刪除多個
db.students.deleteMany({name:"Liming"})
到此這篇關(guān)于MongoDB實現(xiàn)增刪改查的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持本站。
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。