使用pymongo 来操作数据库

本文详细介绍了如何使用pymongo库连接MongoDB数据库,包括插入数据、查询数据、更新数据和删除数据的操作。同时,还探讨了条件操作符如type,排序方法sort,限制与跳过数据的limit和skip,以及数组操作如IN、OR、push/pushAll、pop/pull/pullAll等。最后,展示了多级路径元素的操作示例。
摘要由CSDN通过智能技术生成

使用pymongo 来接数据库

连接mongodb

#!/usr/bin/env python
# -*- coding:utf-8 -*-

from pymongo import MongoClient

conn = MongoClient('192.168.0.113', 27017)
db = conn.mydb  #连接mydb数据库,没有则自动创建
my_set = db.test_set  #使用test_set集合,没有则自动创建

插入数据(insert插入一个列表多条数据不用遍历,效率高, save需要遍历列表,一个个插入)

my_set.insert({
  "name":"zhangsan","age":18})
#或
my_set.save({
  "name":"zhangsan","age":18})

插入多条

#添加多条数据到集合中
users=[{
  "name":"zhangsan","age":18},{
  "name":"lisi","age":20}]  
my_set.insert(users) # insert 已经过时了,推荐使用 insert_one  或者  insert_many 来进行插入操作
#或
my_set.save(users) 

查询数据(查询不到则返回None)

#查询全部
# 使用find 返回的是一个coursor对象, 可以使用for循环进行遍历得出具体的结果
还可以使用 coursor.next()  逐步的获取下一个对象
for i in my_set.find():
    print(i)
#查询name=zhangsan的
for i in my_set.find({
  "name":"zhangsan"}):
    print(i)
print(my_set.find_one({
  "name":"zhangsan"}))  # find_one  返回的是一个具体的对象

更新数据

my_set.update(
   <query>,    #查询条件
   <update>,    #update的对象和一些更新的操作符
   {
     upsert: <boolean>,    #如果不存在update的记录,是否插入
     multi: <boolean>,        #可选,mongodb 默认是false,只更新找到的第一条记录
     writeConcern: <document>    #可选,抛出异常的级别。
   }
)

把上面插入的数据内的age改为20

my_set.update({
   "name":"zhangsan"},{
   '$set':{
   "age":20}})

删除数据

my_set.remove(
   <query>,    #(可选)删除的文档的条件
   {
     justOne: <boolean>,    #(可选)如果设为 true 或 1,则只删除一个文档
     writeConcern: <d
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值