使用PyMongo连接MongoDB的基本操作

MongoDB是由C++语言编写的非关系型数据库,是一个基于分布式文件存储的开源数据库系统,其内容存储形式类似JSON对象,它的字段值可以包含其他文档、数组及文档数组。在这一节中,我们就来回顾Python 3MongoDB的存储操作。

常用命令:

  1. 查询数据库: show dbs

  2. 使用数据库: use 库名

  3. 查看集合: show tables/show collections

  4. 查询表数据: db.集合名.find()

  5. 删除表: db.集合名.drop()

链接MongoDB

连接MongoDB时,我们需要使用PyMongo库里面的MongoClient。一般来说,传入MongoDBIP及端口即可,其中第一个参数为地址host,第二个参数为端口port(如果不给它传递参数,默认是27017)

python 复制代码
    import pymongo # 如果是云服务的数据库 用公网IP连接
    
    
    client = pymongo.MongoClient(host='localhost', port=27017)
指定数据库与表
python 复制代码
    import pymongo
    
    
    client = pymongo.MongoClient(host='localhost', port=27017)
    collection = client['students']
插入数据

对于students这个集合,新建一条学生数据,这条数据以字典形式表示:

python 复制代码
    # pip install pymongo
    import pymongo
    
    mongo_client = pymongo.MongoClient(host='localhost', port=27017)
    collection = mongo_client['students']['stu_info']
    
    # 插入单条数据
    # student = {'id': '20170101', 'name': 'Jordan', 'age': 20, 'gender': 'male'}
    # result = collection.insert_one(student)
    # print(result)
    
    
    # 插入多条数据
    student_1 = {'id': '20170101', 'name': 'Jordan', 'age': 20, 'gender': 'male'}
    student_2 = {'id': '20170202', 'name': 'Mike', 'age': 21, 'gender': 'male'}
    result = collection.insert_many([student_1, student_2])
    print(result)
相关推荐
databook4 分钟前
当条形图遇上极坐标:径向与圆形条形图的视觉革命
python·数据分析·数据可视化
阿部多瑞 ABU33 分钟前
`chenmo` —— 可编程元叙事引擎 V2.3+
linux·人工智能·python·ai写作
acanab37 分钟前
VScode python插件
ide·vscode·python
Knight_AL1 小时前
Spring 事务传播行为 + 事务失效原因 + 传播行为为什么不用其他模式
数据库·sql·spring
倔强的石头_1 小时前
时序数据时代的“存储与分析困局”解析及金仓解决方案
数据库
计算机毕设VX:Fegn08951 小时前
计算机毕业设计|基于springboot + vue小型房屋租赁系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
知乎的哥廷根数学学派1 小时前
基于生成对抗U-Net混合架构的隧道衬砌缺陷地质雷达数据智能反演与成像方法(以模拟信号为例,Pytorch)
开发语言·人工智能·pytorch·python·深度学习·机器学习
WangYaolove13142 小时前
Python基于大数据的电影市场预测分析(源码+文档)
python·django·毕业设计·源码
倔强的石头_2 小时前
场景化落地指南——金仓时序数据库在关键行业的应用实践
数据库
知乎的哥廷根数学学派2 小时前
基于自适应多尺度小波核编码与注意力增强的脉冲神经网络机械故障诊断(Pytorch)
人工智能·pytorch·python·深度学习·神经网络·机器学习