学习笔记(十八)——MongoDB(CRUD)与Python交互
什么是MongoDB?
MongoDB 是一個(gè)跨平臺(tái)的,面向文檔的數(shù)據(jù)庫(kù),是當(dāng)前 NoSQL 數(shù)據(jù)庫(kù)產(chǎn)品中最熱門的一種。它介于關(guān)系數(shù)據(jù)庫(kù)和非關(guān)系數(shù)據(jù)庫(kù)之間,是非關(guān)系數(shù)據(jù)庫(kù)當(dāng)中功能最豐富,最像關(guān)系數(shù)據(jù)庫(kù)的產(chǎn)品。它支持的數(shù)據(jù)結(jié)構(gòu)非常松散,是類似JSON 的 BSON 格式,因此可以存儲(chǔ)比較復(fù)雜的數(shù)據(jù)類型。其最小的單元是文檔,缺點(diǎn):比較耗內(nèi)存。
mongodb的庫(kù)、集合的操作
mongo:進(jìn)入mongo
show dbs :查看所有數(shù)據(jù)庫(kù) (前3個(gè)是配置信息)
use 數(shù)據(jù)庫(kù)名 :切換/創(chuàng)建數(shù)據(jù)庫(kù)(存在就進(jìn)入,不存在就創(chuàng)建)
db :查看所在庫(kù)
db.dropDatabase(): 刪除庫(kù)(要先進(jìn)入才能刪除)
show collections :查看當(dāng)前數(shù)據(jù)庫(kù)的集合
db.createCollection('stu') : 創(chuàng)建集合 stu:集合名
db.stu.drop() : 刪除集合 stu:集合名
MongoDB的常用操作
1、增
db.集合名稱.insert(文檔)示例:
#插入一條數(shù)據(jù) db.stu.insert({name:'wang',age:19}) #插入多條數(shù)據(jù) db.stu.insert([{name:'wang',sex:'男',age:18},{name:'li',sex:'女',age:16},{name:'bai',sex:'男',age:19}, ])注意:我們插入數(shù)據(jù)后,系統(tǒng)會(huì)自動(dòng)生成一個(gè)_id,我們可以在插入時(shí)更改這個(gè)id,如:
db.stu.insert({_id:1,name:'wang',age:19})2、查
1、查詢所有數(shù)據(jù)
db.stu.find() 整體查詢db.stu.find().pretty 格式化顯示,美觀查詢2、條件查詢
db.stu.find({name:'wang'},{age:1}) 顯示滿足姓名為'wang'的年齡db.stu.find({name:'wang'},{age:0}) 不顯示滿足姓名為'wang'的年齡and條件、 or條件(注意在使用and或or前不能漏掉$)
db.students.find({$or:[{},{}]}) db.students.find({$or:[{$and:[{},{}]},{$and:[{},{}]}]})$gt:大于
$lt:小于
$gte:大于或等于
$lte:小于或等于
$ne:不等于
示例:
db.stu.find({$or:[{$and:[{sex:'女'},{age:18}}]}, #條件1{&and:[{sez:'男'},{age:{$gt:18}}]} #條件2] }) 查詢滿足條件1或者條件2的數(shù)據(jù) 條件1:性別女并且年齡18歲 條件2:性別男并且年齡大于18歲3、改
$set:有就修改,沒(méi)有就創(chuàng)建
db.stu.update({name:'wang'},{name:wangwang}) 只會(huì)修改一條數(shù)據(jù),并且其他數(shù)據(jù)也沒(méi)了 db.stu.update({name:'wang'},{$set:{age:25}}) 只會(huì)修改一條數(shù)據(jù),并且其他數(shù)據(jù)保留 db.stu.update({name:'bai'},{$set:{age:25}},{multi:true}) 會(huì)修改多條(所有滿足條件)數(shù)據(jù),并且其他數(shù)據(jù)數(shù)據(jù)保留4、刪
db.stu.remove({age:25},{justOne:true}) 只刪除符合條件的第一條數(shù)據(jù) 注意justOne的大小寫 db.stu.remove({age:25}) 刪除符合條件的所有數(shù)據(jù) db.stu.remove({}) 刪除所有數(shù)據(jù)Python操作MongoDB
#準(zhǔn)備--------------------------------------------------------#導(dǎo)入模塊 import pymongo #systemctl start mongodb.service 開啟服務(wù) #1、建立連接 client = pymongo.MongoClient('127.0.0.1',27017) #2、指定數(shù)據(jù)庫(kù) db = client['mydb'] #3、指定集合 collection = db['stu']#操作---------------------------------------------------------#增 #插入一條 collection.insert_one({'name':'wu','sex':'男','age':18}) #插入多條 collection.insert_many([{'name':'wang','sex':'男','age':18},{'name':'li','sex':'女','age':16},{'name':'bai','sex':'男','age':19}, ])#改 #修改一條 collection.update_one({'name':'wang'},{'$set':{'age':20}}) #修改多條 collection.update_many({'name':'li'},{'$set':{'age':21}})#刪 #刪除一條滿足條件 collection.delete_one({'name':'li'}) #刪除多條滿足條件 collection.delete_many({'name':'li'}) #刪除所有 collection.delete_many({})#查 data = collection.find() for i in data:print(i)總結(jié)
以上是生活随笔為你收集整理的学习笔记(十八)——MongoDB(CRUD)与Python交互的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: CSDN内容颜色、位置以及图片大小改变
- 下一篇: websocket python爬虫_p