提示:文章看完之后,保证你熟练精通Mongodb数据库。
文章目录
前言
MongoDB是一种流行的开源文档数据库,属于NoSQL数据库的一种。它采用文档存储模型,数据以类似JSON格式的BSON(Binary JSON)文档进行存储,这使得数据在应用程序中更易读、更具表现力。
以下是 MongoDB 的一些主要特点和优势:
-
灵活的数据模型:MongoDB采用文档存储模型,数据以文档的形式存储,每个文档可以具有不同的结构,支持嵌套文档和数组等复杂数据结构。
-
高性能:MongoDB具有快速的查询性能,支持丰富的查询操作,可以通过索引来提高查询性能,适合处理大量数据和高并发请求。
-
水平扩展:MongoDB支持水平扩展,可以通过分片(Sharding)将数据分布到多台服务器上,实现横向扩展,提高系统的容量和性能。
-
高可用性:MongoDB支持副本集(Replica Set),提供数据冗余和自动故障转移功能,保证数据的高可用性和持久性。
-
容易部署和管理:MongoDB的部署和管理相对简单,有丰富的管理工具和社区支持,可以轻松地进行部署、监控和维护。
-
支持丰富的查询功能:MongoDB支持多种查询操作,包括范围查询、正则表达式查询、聚合查询等,还支持地理空间查询和全文搜索等。
-
社区活跃: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应用开发中的重要组成部分。