(三)Python连接MongoDB
一.基础准备
MongoDB开启服务。Linux关闭防火墙。因为这里配置用的是Mongodb全分布式,所以使用分片的端口是28111、28112、28113、28200其中之一。
1.安装pymongo
2.连接MongoDB
import pymongo # 导库 client = pymongo.MongoClient(host='localhost', port=28111) # ip+端口连接 client = MongoClient('mongodb://localhost:28111/') # 这种方法与前面一种连接等价
3.指定数据库
db = client.db_name # 指定库 db = client['db_name'] # 这方法同上指定等价
4. 指定集合
tb = db.tb_name # 指定集合 tb = db['tb_name'] # 这方法同上指定等价
二.文档\增\删\改\查
1.增加文档数据
data = [{"id":1,"name":"mongo"},{"id":2,"name":"java"}] # 定义数据多行数据以逗号隔开 result = tb.insert(data) # 插入 print(result) # 打印id值
2.删除文档数据
result = tb.remove({'name': 'Kevin'}) # 删除指定name为Kevin的文档 result = tb.remove() # 删除所有 print(result) # 打印
3.修改文档数据
result = tb.update( {"原name":"原Kevin"}, {$set: {"原name":"新Kevin"} }) print(result) # 打印
4.查询文档数据
result = tb.find_one({'id': 1}) # 查询单个结果数据 print(type(result)) # 打印类型 print(result) # 打应输出 results = tb.find({'id': 2}) # 查询id为2的数据 print(results) # 打应输出 for result in results: # 他是个列表循环打印 print(result) # 打应输出
5.综合案例
1.代码
import pymongo # 导库 client = pymongo.MongoClient(host='192.168.2.131', port=28111) # ip+端口连接 database = client.db_name # 指定库 table = database.tb_name # 指定集合 data = [{"id":1,"name":"mongo"},{"id":2,"name":"java"}] # 定义数据多行数据以逗号隔开 result = table.insert(data) # 插入 result = table.find() # 查询单个结果数据 # print(result) # print(type(result)) # 打印类型 for i in result: print(i) # 打应输出
2.Mongodb查看数据