第十一章 学会Mongobd数据库,看这篇就够了!【建议收藏】

提示:文章看完之后,保证你熟练精通Mongodb数据库。


前言

MongoDB是一种流行的开源文档数据库,属于NoSQL数据库的一种。它采用文档存储模型,数据以类似JSON格式的BSON(Binary JSON)文档进行存储,这使得数据在应用程序中更易读、更具表现力。

以下是 MongoDB 的一些主要特点和优势:

  1. 灵活的数据模型:MongoDB采用文档存储模型,数据以文档的形式存储,每个文档可以具有不同的结构,支持嵌套文档和数组等复杂数据结构。

  2. 高性能:MongoDB具有快速的查询性能,支持丰富的查询操作,可以通过索引来提高查询性能,适合处理大量数据和高并发请求。

  3. 水平扩展:MongoDB支持水平扩展,可以通过分片(Sharding)将数据分布到多台服务器上,实现横向扩展,提高系统的容量和性能。

  4. 高可用性:MongoDB支持副本集(Replica Set),提供数据冗余和自动故障转移功能,保证数据的高可用性和持久性。

  5. 容易部署和管理:MongoDB的部署和管理相对简单,有丰富的管理工具和社区支持,可以轻松地进行部署、监控和维护。

  6. 支持丰富的查询功能:MongoDB支持多种查询操作,包括范围查询、正则表达式查询、聚合查询等,还支持地理空间查询和全文搜索等。

  7. 社区活跃:MongoDB拥有活跃的社区支持,有大量的文档和教程可供参考,同时也有丰富的第三方工具和插件可使用。

一、Mongodb的基本概述

Mongodb是文档型数据库需要配置环境变量就相当于存储json格式的数据库。
在mongodb下可以创建许多数据库。
数据库下可以创建集合就类似于关系型数据库中的表。
文档就类似关系型数据库中表的行。(因为这是非关系型数据库,没有列的概念。可以存储任意格式的数据。)

二、在终端操作mongodb

2.1.登录(连接相关操作)

mongo
无密码直接登录,默认是在本机登录使用root用户。

2.2.数据库相关

show dbs
只显示非空数据库!
db
直接显示当前数据库!
use teacher
连接数据库或者是创建数据库!
db.dropDatabase()

2.3.表相关(集合相关)

  • 创建集合
    db.createCollection(“collectionName”)

  • 查看集合列表
    show collections
    show tables

  • 删除集合
    db.collectionName.drop()

2.4.文档相关(行相关)

  • 插入文档到集合中
    db.collectionName.insertOne(document) db.collectionName.insertMany([document1, document2])

  • 批量插入文档到集合中
    db.collectionName.insertBulk([document1, document2])

  • 更新集合中的文档
    db.collectionName.updateOne(filter, update) db.collectionName.updateMany(filter, update)

  • 替换集合中的文档
    db.collectionName.replaceOne(filter, replacement)

  • 删除集合中的文档
    db.collectionName.deleteOne(filter) db.collectionName.deleteMany(filter)

  • 查询集合中的文档
    db.collectionName.find(filter) db.collectionName.findOne(filter) db.collectionName.find().sort(sort).limit(limit)

三.使用Python操作MongoDB的基本脚本

3.1.基本语句

from pymongo import MongoClient
连接MongoDB数据库
client = MongoClient(‘mongodb://localhost:27017/’)
获取数据库
db = client[‘testDB’]
获取集合
collection = db[‘testCollection’]
插入文档
data = {‘name’: ‘John’, ‘age’: 25}
collection.insert_one(data
查询文档
results = collection.find({‘age’: {‘KaTeX parse error: Expected 'EOF', got '}' at position 9: gte': 18}̲}) for result i…set’: {‘age’: 30}})
删除文档
collection.delete_one({‘name’: ‘John’})
断开数据库连接
client.close()

3.2.操作流程

插入数据使用insert_one方法,传入要插入的数据作为参数,该方法将返回一个InsertOneResult对象。

查询数据使用find方法,接受一个查询条件作为参数,返回一个Cursor对象,可以遍历所有查询结果。

更新数据使用update_one方法,将查询条件和更新的操作作为参数传入,更新操作使用$set操作符。

删除数据使用delete_one方法,传入查询条件作为参数。

最后,我们使用close方法关闭数据库连接。请注意,上述代码仅为演示基本操作,实际使用时可能需要更多的错误处理和逻辑。

总结

MongoDB是一款功能强大、性能优越、易于使用和管理的数据库管理系统,适用于大数据量、高并发、灵活变化的应用场景。它的特点使得它成为现代Web应用开发中的重要组成部分。

  • 22
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值