教你如何轻松用 python 连接和操纵 MongoDB 数据库

打印 上一主题 下一主题

主题 766|帖子 766|积分 2298

前言

    连接数据库之前,你需要提前安装好 Python 和 MongoDB ,这里默认你已经好了。点击这里了解 MongoDB 相关信息 、Python安装、演示代码地址。
    在 Python 中操纵 MongoDB,通常使用 pymongo 库。pymongo 是官方的 MongoDB 驱动程序,可以让你轻松地连接和操纵 MongoDB 数据库。
1. 安装 pymongo 库

起首,你需要安装 pymongo 库。可以通过以下下令进行安装:
··· bash
pip install pymongo
···
2. 连接 MongoDB 并执行根本操纵

  1. from pymongo import MongoClient
  2. # 创建 MongoDB 客户端并连接到服务器
  3. client = MongoClient("mongodb://localhost:27017/")  # 替换为你的 MongoDB 连接 URI
  4. # 选择数据库(如果数据库不存在,MongoDB 会在插入数据时创建它)
  5. db = client["your_database"]
  6. # 选择集合(类似于关系型数据库中的表)
  7. collection = db["your_collection"]
  8. # 插入一个文档(类似于关系型数据库中的行)
  9. document = {"name": "李明", "age": 23, "city": "中国"}
  10. insert_result = collection.insert_one(document)
  11. print(f"插入的文档ID: {insert_result.inserted_id}")
  12. # 查询文档
  13. query_result = collection.find_one({"name": "李明"})
  14. print("查询结果:", query_result)
  15. # 插入多个文档
  16. documents = [
  17.     {"name": "张三", "age": 25, "city": "中国"},
  18.     {"name": "李四", "age": 31, "city": "中国"}
  19. ]
  20. insert_many_result = collection.insert_many(documents)
  21. print("插入的文档ID:", insert_many_result.inserted_ids)
  22. # 查询多个文档
  23. for doc in collection.find():
  24.     print(doc)
  25. # 更新文档
  26. update_result = collection.update_one({"name": "张三"}, {"$set": {"age": 24}})
  27. print(f"匹配: {update_result.matched_count}, 修改: {update_result.modified_count}")
  28. # 删除文档
  29. delete_result = collection.delete_one({"name": "张三"})
  30. print(f"已删除文档数: {delete_result.deleted_count}")
  31. # 关闭客户端连接
  32. client.close()
复制代码
3. MongoDB 根本操纵分析



  • 连接 MongoDB:使用 MongoClient 连接到 MongoDB 服务器,指定 MongoDB URI,比方 mongodb://localhost:27017/。
  • 选择数据库:通过 client["your_database"] 选择数据库。
  • 选择集合:通过 db["your_collection"] 选择集合。
  • 插入数据:使用 insert_one 插入单个文档,或使用 insert_many 插入多个文档。
  • 查询数据:使用 find_one 查询单个文档,或使用 find 查询多个文档。
  • 更新数据:使用 update_one 更新单个文档,或使用 update_many 更新多个文档。
  • 删除数据:使用 delete_one 删除单个文档,或使用 delete_many 删除多个文档。
4. 错误处理

使用 try-except 结构来处理可能出现的异常:
  1. from pymongo.errors import ConnectionFailure
  2. try:
  3.     client = MongoClient("mongodb://localhost:27017/")
  4.     db = client["your_database"]
  5.     print("MongoDB 连接成功")
  6. except ConnectionFailure as e:
  7.     print(f"MongoDB 连接失败: {e}")
  8. finally:
  9.     client.close()
复制代码
如果链接不上,cmd 执行 mongo 下令,启动报错: error: MongoNetworkError: connect ECONNREFUSED 127.0.0.1:27017;可参考 MongoDB报错解决。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

tsx81429

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表