当前位置: 首页 > news >正文

Python MongoDB

MongoDB 是目前最流行的 NoSQL 数据库之一,使用的数据类型 BSON(类似 JSON)。

MongoDB 数据库安装与介绍可以查看我们的 MongoDB 教程。


PyMongo

Python 要连接 MongoDB 需要 MongoDB 驱动,这里我们使用 PyMongo 驱动来连接。

pip 安装

pip 是一个通用的 Python 包管理工具,提供了对 Python 包的查找、下载、安装、卸载的功能。

安装 pymongo:

$ python3 -m pip3 install pymongo

也可以指定安装的版本:

$ python3 -m pip3 install pymongo==3.5.1

更新 pymongo 命令:

$ python3 -m pip3 install --upgrade pymongo

easy_install 安装

旧版的 Python 可以使用 easy_install 来安装,easy_install 也是 Python 包管理工具。

$ python -m easy_install pymongo

更新 pymongo 命令:

$ python -m easy_install -U pymongo

测试 PyMongo

接下来我们可以创建一个测试文件 demo_test_mongodb.py,代码如下:

demo_test_mongodb.py 文件代码:

#!/usr/bin/python3 import pymongo

执行以上代码文件,如果没有出现错误,表示安装成功。


创建数据库

创建一个数据库

创建数据库需要使用 MongoClient 对象,并且指定连接的 URL 地址和要创建的数据库名。

如下实例中,我们创建的数据库 runoobdb :

#!/usr/bin/python3import pymongomyclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["runoobdb"]

注意: 在 MongoDB 中,数据库只有在内容插入后才会创建! 就是说,数据库创建后要创建集合(数据表)并插入一个文档(记录),数据库才会真正创建。

判断数据库是否已存在

我们可以读取 MongoDB 中的所有数据库,并判断指定的数据库是否存在:

#!/usr/bin/python3import pymongomyclient = pymongo.MongoClient('mongodb://localhost:27017/')dblist = myclient.list_database_names()
# dblist = myclient.database_names() 
if "runoobdb" in dblist:print("数据库已存在!")

注意:database_names 在最新版本的 Python 中已废弃,Python3.7+ 之后的版本改为了 list_database_names()。


创建集合

MongoDB 中的集合类似 SQL 的表。

创建一个集合

MongoDB 使用数据库对象来创建集合,实例如下:

#!/usr/bin/python3import pymongomyclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["runoobdb"]mycol = mydb["sites"]

注意: 在 MongoDB 中,集合只有在内容插入后才会创建! 就是说,创建集合(数据表)后要再插入一个文档(记录),集合才会真正创建。

判断集合是否已存在

我们可以读取 MongoDB 数据库中的所有集合,并判断指定的集合是否存在:

#!/usr/bin/python3import pymongomyclient = pymongo.MongoClient('mongodb://localhost:27017/')mydb = myclient['runoobdb']collist = mydb. list_collection_names()
# collist = mydb.collection_names()
if "sites" in collist:   # 判断 sites 集合是否存在print("集合已存在!")

注意:collection_names 在最新版本的 Python 中已废弃,Python3.7+ 之后的版本改为了 list_collection_names()。


增、删、改、查等操作

下表列出了 MongoDB 的更多操作,详情可点击具体链接:

序号功能
1添加数据
2查询数据
3修改数据
4数据排序
5删除数据
http://www.lryc.cn/news/443777.html

相关文章:

  • 安国U盘量产工具系列下载地址
  • 2024年最新版Vue3学习笔记
  • FX5 CPU模块和以太网模块的以太网通信功能
  • 【结构型】树形结构的应用王者,组合模式
  • C++——求3*3矩阵对角元素之和。
  • nodejs基于vue电子产品商城销售网站的设计与实现 _bugfu
  • GO Ants 学习
  • Scikit-learn (`sklearn`) 教程
  • 【计网】从零开始掌握序列化 --- JSON实现协议 + 设计 传输\会话\应用 三层结构
  • Qt 模型视图(四):代理类QAbstractItemDelegate
  • django+vue
  • HCIA--实验十七:EASY IP的NAT实现
  • 彻底解决:QSqlDatabase: QMYSQL driver not loaded
  • leetcode02——59. 螺旋矩阵 II、203. 移除链表元素
  • Matlab Simulink 主时间步(major time step)、子时间步(minor time step)
  • docker 升级步骤
  • 828华为云征文 | 云服务器Flexus X实例:one-api 部署,支持众多大模型
  • 2024 SNERT 预备队招新 CTF 体验赛-Web
  • 亲测全网10大“免费”论文降重神器!论文写作必备!
  • 二分算法——优选算法
  • Kafka 的基本概念
  • 《粮油与饲料科技》是什么级别的期刊?是正规期刊吗?能评职称吗?
  • Python之一些列表的练习题
  • MoFA: 迈向AIOS
  • c语言中define使用方法
  • 尚品汇-秒杀商品定时任务存入缓存、Redis发布订阅实现状态位(五十一)
  • 第十一章 【后端】商品分类管理微服务(11.4)——spring-boot-devtools
  • MySQL篇(索引)(持续更新迭代)
  • 通用接口开放平台设计与实现——(31)API服务线程安全问题确认与修复
  • 2011-2022年数字金融与企业ESG表现:效应、机制与“漂绿”检验(内含原始数据+处理代码)