使用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)
相关推荐
狐狐生风6 分钟前
LangChain 向量存储:Chroma、FAISS
人工智能·python·学习·langchain·faiss·agentai
虹科网络安全8 分钟前
艾体宝干货|数据复制详解:类型、原理与适用场景
java·开发语言·数据库
狐狐生风15 分钟前
LangChain RAG 基础
人工智能·python·学习·langchain·rag·agentai
2301_7717172129 分钟前
解决mysql报错:1406, Data too long for column
android·数据库·mysql
老前端的功夫1 小时前
【Java从入门到入土】28:Stream API:告别for循环的新时代
java·开发语言·python
小江的记录本1 小时前
【Kafka核心】架构模型:Producer、Broker、Consumer、Consumer Group、Topic、Partition、Replica
java·数据库·分布式·后端·搜索引擎·架构·kafka
dvjr cloi1 小时前
MySQL Workbench菜单汉化为中文
android·数据库·mysql
yaoxin5211231 小时前
397. Java 文件操作基础 - 创建常规文件与临时文件
java·开发语言·python
dFObBIMmai1 小时前
MySQL主从同步中大事务导致的延迟_如何拆分大事务优化同步
jvm·数据库·python
szccyw01 小时前
mysql如何限制特定存储过程执行权限_MySQL存储过程安全访问
jvm·数据库·python