使用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)
相关推荐
水银嘻嘻1 分钟前
02 APP 自动化-Appium 运行原理详解
python·appium·自动化
@Turbo@29 分钟前
【QT】在QT6中读取文件的方法
开发语言·数据库·qt
ArabySide38 分钟前
【EF Core】 EF Core 批量操作的进化之路——从传统变更跟踪到无跟踪更新
数据库·.net·efcore
几道之旅1 小时前
python-pptx去除形状默认的阴影
开发语言·javascript·python
2301_778658802 小时前
【Python训练营打卡】day40 @浙大疏锦行
python
西京刀客2 小时前
python常用库-pandas、Hugging Face的datasets库(大模型之JSONL(JSON Lines))
python·json·数据集·pandas·模型训练·datasets
Lilith的AI学习日记2 小时前
n8n 中文系列教程_25.在n8n中调用外部Python库
开发语言·人工智能·python·机器学习·chatgpt·ai编程·n8n
老大白菜2 小时前
构建多模型协同的Ollama智能对话系统
python·ollama
线条13 小时前
Hive SQL 中 BY 系列关键字全解析:从排序、分发到分组的核心用法
数据库·hive·sql
字节源流3 小时前
【MYSQL】索引篇(一)
数据库·mysql