简单的增删改查

# pip install pymongo

from pymongo import MongoClient # MongoClient 芒果客户端


# 连接数据库
def get_db():
client = MongoClient(host="localhost", port=27017) # MongoClient 可以点进去 默认端口号:27017
# 登录
# admin = client['admin']
# admin.authenticate("sylar", "123456")

db = client['haha'] # client['haha'] 切换到某个数据库 use haha
return db


# 添加一条数据
def add_one(collection_name, data):
db = get_db()
# result = db['teacher'].insert_one({"name": "ale", "age": 18}) # db['teacher'] []里面放的集合
# result = db.teacher.insert_one({"name": "樵夫", "age": 18})
# result = db.collection_name.insert_one(data) # 错误写法
result = db[collection_name].insert_one(data) # 正确写法 collection_name 集合名字变量
# print(result)
return result


# 添加多条数据 data 应该是个列表
def add_many(collection_name, data):
db = get_db()
result = db[collection_name].insert_many(data)
return result


# 修改一条数据
def upd_one(collection_name, condition, prepare): # condition 条件 prepare 待修改的东西
db = get_db()
result = db[collection_name].update_one(condition, prepare)
return result


# 修改多条数据
def upd_many(collection_name, condition, prepare): # condition 条件 prepare 待修改的东西
db = get_db()
result = db[collection_name].update_many(condition, prepare)
return result

# 删除一条数据
def delete_one(col, condition): # col 集合, condition 删除条件
db = get_db()
db[col].delete_one(condition)


# 删除多条数据
def delete_many(col, condition,): # col 集合, condition 删除条件
db = get_db()
db[col].delete_many(condition)

# 查询数据
def query(col, condition): # col 集合, condition 删除条件
db = get_db()
result = db[col].find(condition)
# for item in result: 拿到结果的方法1
# print(item)
return list(result) # 方法2


if __name__ == '__main__':
# add_one(1)
# 添加一条数据
# add_one("teacher", {"name": "小颜同学", "age": 456})
# 添加多条数据
# add_many("teacher", [{"name": 367, "age": 367}, {"name": 367, "age": 367}])
# 修改一条数据
# upd_one("teacher", {"name": 123}, {"$set": {"age": 777}})
# 修改多条数据
# upd_many("teacher", {"name": "alex"}, {"$set": {"age": -30}})
# 删除一条数据
# delete_one("teacher", {"name": "alex"})
# 删除多条数据
# delete_many("teacher", {"name": 123})
# 查询数据
# query("teacher", {"name": "小颜同学"}) 方法1同步

# result = query("teacher", {"name": "小颜同学"})
# print(result)
# result = query("stu", {"bson": {"$regex": "^吃"}}) # 查询性 吃的同学
# print(result)
result = query("stu", {"bson": "/^吃/"}) # 查询性 吃的同学
print(result)
posted @ 2023-08-14 16:12  严永富  阅读(4)  评论(0)    收藏  举报