實驗一 建立mogodb的庫
import pymongo
from pymongo import MongoClient
# client=MongoClient("localhost",27017) #和下面一行二選一
client = MongoClient("mongodb://localhost:27017/")
for i in range(2,30):#操作資料庫
db=client["ccf1"]#建立集合
db["ccf23"].insert({"KEasYS":2874435})#集合中建立關系表
dblist = client.list_database_names()#資料集合名字
if "ccf1" in dblist:
print("資料庫已存在!")
client.close
實驗二 插入集合
2.1插入一個資料
#!/usr/bin/python3
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["saic"]
mycol = mydb["sites"]
mydict = { "name": "WV", "AREA": "嘉定"}#支援中文
x = mycol.insert_one(mydict) #傳回這個資料的id,id是全局唯一變量
print(x)
2.2插入多個資料
#!/usr/bin/python3
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["saic"]
mycol = mydb["sites"]
mylist = [
{ "name": "WV", "AREA": "中國"},
{ "name": "WV", "AREA": "SH"},
{ "name": "WV", "AREA": "安亭"},
{ "_id":"12345","name": "WV", "AREA": "待定","投資":"1000W"}#指定id,可以是字元串也可以是數字;存儲的資料可以結構不一樣
]
x = mycol.insert_many(mylist)
print(x.inserted_ids)
實驗三 資料檢索
3.1檢索單個資料
#!/usr/bin/python3
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["saic"]
mycol = mydb["sites"]
mylist = [
{ "name": "WV", "AREA": "中國"},
{ "name": "WV", "AREA": "SH"},
{ "name": "WV", "AREA": "安亭"},
{ "name": "WV","part":"榮威 RX5", "AREA": "待定","投資":"1000W"}
]
x = mycol.insert_many(mylist)
print(x.inserted_ids)
print(mycol.find_one())#本資料庫的第一個資料
3.2檢索所有資料
#!/usr/bin/python3
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["saic"]
mycol = mydb["sites"]
mylist = [
{ "name": "WV", "AREA": "中國"},
{ "name": "WV", "AREA": "SH"},
{ "name": "WV", "AREA": "安亭"},
{ "name": "WV","part":"榮威 RX5", "AREA": "待定","投資":"1000W"}
]
x = mycol.insert_many(mylist)
print(x.inserted_ids)
for i in mycol.find():#打出所有資料
print(i)
print(i["name"])#用關鍵字打出對應的鍵值
3.3檢索指定字段的資料
#!/usr/bin/python3
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["saic"]
mycol = mydb["sites"]
mylist = [
{ "name": "WV", "AREA": "中國"},
{ "name": "WV", "AREA": "SH"},
{ "name": "WV", "AREA": "安亭"},
{ "name": "WVg","part":"榮威 W5", "AREA": "待定","投資":"1000W"}
]
x = mycol.insert_many(mylist)
for x in mycol.find({"part":{"$regex": "R"}}):#加入正規表達式
print(x)
for x in mycol.find({"part":"榮威"}):#加入限定條件,隻要part中包括榮威就會被列出
print(x)
for x in mycol.find({},{ "_id": 0, "part": 1, "投資": 1 }):#檢測關鍵字存在
print(x)
myresult = mycol.find().limit(3)#回報前三條
for x in myresult:
print(x)
實驗四 改資料
4.1修改所有比對到的記錄
#!/usr/bin/python3
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["saic"]
mycol = mydb["sites"]
myquery = { "name": "WV","part":"榮威 RX5" }#檢索篩選條件
newvalues = { "$set": { "AREA": "嘉定" } }#替換的資料
x = mycol.update_many(myquery, newvalues)#替換觸發
4.2修改單條記錄
#!/usr/bin/python3
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["saic"]
mycol = mydb["sites"]
myquery = { "name": "WV","part":"榮威 RX5" }#檢索篩選條件
newvalues = { "$set": { "AREA": "揚州" } }#替換的資料
mycol.update_one(myquery, newvalues)#替換觸發,隻修改遇到的第一條資料
# 輸出修改後的 "sites" 集合
for x in mycol.find():
print(x)
實驗五 排序
5.1
#!/usr/bin/python3
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["saic"]
mycol = mydb["sites"]
mydoc = mycol.find().sort("part",-1)#按照part的值倒叙排序,值相同的比較_id
for x in mydoc:
print(x)
#!/usr/bin/python3
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["saic"]
mycol = mydb["sites"]
myquery = { "AREA": "anting" }
mycol.delete_one(myquery)
for x in mycol.find():
print(x)
#!/usr/bin/python3
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["saic"]
mycol = mydb["sites"]
myquery = { "AREA": "anting" }
mycol.delete_many(myquery)
for x in mycol.find():
print(x)
#!/usr/bin/python3
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["saic"]
mycol = mydb["sites"]
mycol.drop()