一、在电脑上安装MongoDB数据库
1.下载mongodb安装包
2.配置
A、 添加到环境变量
B、 指定工作目录
3.测试是否安装成功
4.安装为windows服务
5.启动服务
6.连接数据库
二、pymongo部分
1.安装pymongo
pip install pymongo
2.连接MongoDB
使用pymongo库中的MongoClient,需要传入ip和端口。
#方式一
client = pymongo.MongoClient(host="localhost",port=27017)
#方式二
client = pymongo.MongoClient('mongodb://localhost:27017/')
3.指定数据库
指定操作的数据库,我先在mongodb中创建了一个数据库test,这里就指定这个test数据库。
#方式一
db = client.test
#方式二
db = client.["test"]
4.指定集合
每个数据库中可以有多个集合,操作的时候需要指定具体是哪个集合,这里我指定的是预先创建好的集合books。
#方式一
collection = db.books
#方式二
collection = db["books"]
5.插入数据
这里向books集合中插入数据:
info = {
'_id':'1',
'name':'红楼梦'
}
插入的数据是类似json对象,键值对。其中,每一条数据都有一个_id属性,如果不显示指明该属性,插入数据的时候MongoDB会自动生成一个唯一值赋值给_id属性。
上面的info中显示指明了_id。
执行插入操作,使用collection的insert_one()或insert_many()。
5.1 insert_one()
一次插入一条数据,执行成功后返回InsertOneResult对象,我们可以调用insered_id属性获取_id的值。
result1 = collection.insert_one(info)
print(result1)
5.2 insert_many()
一次插入多条数据,数据以列表的形式传入参数。执行成功后返回InsertmanyResult对象,我们可以调用insered_ids属性获取_id的值。
6.查找数据
查询数据,可以使用find_one()或find()。
6.1 find_one()
find_one()查询得到的是单个结果,是一个字典类型。这里用book_name属性查询的,也可以使用其他属性查询。
result = collection.find_one({"_id":2})
print(result)
执行结果:
6.2 find()
查询多条数据,返回的是一个生成器对象。
result = collection.find()
print(result)
for re in result:
print(r)
执行结果:
6.3查询条件
大于:$gt
小于:$lt
大于等于:$gte
小于等于:$lte
不等于:$ne
在范围:$in
不在范围:$nin
正则匹配查询:$regex
属性是否存在:$exists
类型判断:$type
数字模操作:$mod
文字查询:$text
高级条件查询:$where