Mongo Python增删改查


导入pymongo包,连接本地Mongo库,创建movies库top表。

import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017")
mydb = myclient['movies']
mytable = mydb['top']

1、增

1.使用insert_one插入一条数据,如下:

data = {
    'number': 1,
    '电影名称': '泰坦尼克号',
    '主演': '莱昂纳多·迪卡普里奥',
    '时间': '1994',
    '国家': '美国',
    '类型': '爱情',
    '评分': '9.7',
}
mytable.insert_one(data)

数据库结果如下:
数据
2.使用insert_many插入多条数据,如下:

data = [{
    'number': 2,
    '电影名称': '霸王别姬',
    '主演': '张国荣 ',
    '时间': '1993',
    '国家': '中国',
    '类型': '剧情',
    '评分': '9.6',
},{
    'number': 3,
    '电影名称': '阿甘正传',
    '主演': '汤姆·汉克斯 ',
    '时间': '1994',
    '国家': '美国',
    '类型': '剧情',
    '评分': '9.5',
}]
mytable.insert_many(data)

数据库更新如下:
数据

2、删

使用delete_one来删除一条数据:

mytable.delete_one({'number': 1})

数据库更新如下:
数据

3、改

使用update_one来更新数据:

mytable.update_one({'number': 2}, {'$set': {'number': 1}})

数据库更新如下:
数据
也可以使用update_one来添加属性,比如添加一列‘评价人数’

mytable.update_one({'number': 1}, {'$set': {'评价人数': 1552205}})
mytable.update_one({'number': 3}, {'$set': {'评价人数': 1581417}})

数据库更新如下:
数据

4、查

使用find()函数来查找,在mongo库中可与使用/str/来代表包含str的字段。

mytable.find({'电影名称': '阿甘正传'})

按某个字段的长度查找

//查询字段长度大于25个字符的商品
db.item.find({item_name:{$exists:true},$where:"(this.item_name.length > 25)"})
 
//查询字段长度小于5个字符的商品
db.item.find({$where:"this.item_name.length < 5"})
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 你好! 这是一个简单的类,可以连接到 MongoDB 数据库并进行增删改查操作。这需要使用 PyMongo 库,该库提供了用于连接和操作 MongoDB 数据库的功能。 首先,你需要在终端或命令行中使用以下命令安装 PyMongo 库: ``` pip install pymongo ``` 然后,你可以使用以下代码创建一个类,该类具有连接到 MongoDB 数据库的方法,并具有四个方法,用于增加、删除、修改和查询数据库中的数据。 ```python import pymongo class MongoDB: def __init__(self, host, port, db_name): self.client = pymongo.MongoClient(host, port) self.db = self.client[db_name] def insert_one(self, collection, data): self.db[collection].insert_one(data) def insert_many(self, collection, data_list): self.db[collection].insert_many(data_list) def delete_one(self, collection, query): self.db[collection].delete_one(query) def delete_many(self, collection, query): self.db[collection].delete_many(query) def update_one(self, collection, query, update): self.db[collection].update_one(query, update) def update_many(self, collection, query, update): self.db[collection].update_many(query, update) def find_one(self, collection, query): return self.db[collection].find_one(query) def find(self, collection, query): return self.db[collection].find(query) ``` 使用这个类的方法如下: ```python # 创建 MongoDB 对象 mongodb = MongoDB('localhost', 27017, 'mydb') # 插入一条数据 data = {'name': 'John', 'age': 30} mongodb.insert_one('users', data) # 插入多条数据 data_list = [{'name': 'Alice', 'age': 25}, {'name': ### 回答2: 下面是一个使用Python编写的类,可以进行MongoDB数据库增删改查操作: ```python from pymongo import MongoClient class MongoDBConnector: def __init__(self, host, port, database): self.client = MongoClient(host, port) self.db = self.client[database] def insert(self, collection, data): self.db[collection].insert_one(data) def find(self, collection, query): return self.db[collection].find(query) def update(self, collection, query, update_data): self.db[collection].update(query, {"$set": update_data}) def delete(self, collection, query): self.db[collection].delete_one(query) # 使用示例: connector = MongoDBConnector('localhost', 27017, 'myDB') collection = 'myCollection' # 添加数据 data = {'name': 'John', 'age': 30} connector.insert(collection, data) # 查询数据 query = {'name': 'John'} results = connector.find(collection, query) for result in results: print(result) # 更新数据 query = {'name': 'John'} update_data = {'age': 31} connector.update(collection, query, update_data) # 删除数据 query = {'name': 'John'} connector.delete(collection, query) ``` 这个类通过使用pymongo库来连接MongoDB数据库,并提供了插入、查询、更新和删除操作的方法。你可以根据自己的需要调用这些方法来对数据库进行操作。在使用时,你需要提供MongoDB的主机地址、端口和数据库名称,并将数据集合的名称作为参数传递给方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值