【MongoDB 基本语法】数据库和集合的基本操作--探秘 MongoDB

摘要

MongoDB 是一款 ​NoSQL 文档型数据库。适合处理大量非结构化和半结构化数据。

对数据库和集合的基本操作如下:

操作类别 操作命令 功能说明
创建数据库 use database_name 切换到指定数据库,不存在则自动创建
创建集合 db.createCollection("name") 显式创建集合
查看数据库 show dbs 显示所有非空数据库
db 显示当前使用的数据库
删除数据库 db.dropDatabase() 删除当前数据库(需谨慎)
创建 capped 集合 db.createCollection("name", {capped: true, max: 10000}) 创建固定大小集合
隐式创建集合 db.collection.insert(document) 插入文档时自动创建集合
查看集合 show collectionsshow tables 显示当前数据库的所有集合
删除集合 db.collection.drop() 删除指定集合

1 数据库的基础操作

1.1 查看数据库

启动MondoDB数据库服务,进入到MondoDB客户端时,默认进入初始数据库即,test数据库。

查看所有数据库show dbs

查看当前数据库db

1.2 创建和切换数据库

创建和切换数据的命令是一样的--use database_name

也就说,如果切换到一个没有创建的数据库,会自动创建该数据库。

1.3 删除数据库

删除数据库需要先切换(use)到该数据中,然后使用命令:db.dropDatabase()

该命令的使用相当于调用类的方法,以此类比,MondoDB的操作都类似调用方法。

2 集合的基础操作

MongoDB的集合类似于MySQL的表。当要对集合操作时,需要先切换到该集合对应的数据库。

2.1 查看

先进入到对应的数据库,然后才可以查看集合。

命令:show collections

或命令:show tables

对数据库和集合的基本操作中,查看都使用了相同的show

2.2 集合的创建

2.2.1 创建可持续增长的集合

创建可持续增长的集合:db.createCollection("c1")

注:MongoDB本身对单个文档(类似插入的一行数据)的大小有16MB的限制。有的系统会对集合的内存有上限。

2.2.2 创建capped集合

capped集合是固定大小的集合,当达到大小或文档数量限制时,会自动覆盖最旧的文档。size参数以字节为单位,需同时指定。

命令:db.createCollection("c_name",{capped: trrue, size: *, max: * })

创建一个固定大小集合(capped: true),限制条件为:

size: 6142800:集合最大存储空间(字节)

max: 10000:集合最多存储的文档数量(当达到任一限制时,旧文档会被新文档覆盖)

2.2.3 隐式创建集合

通过插入文档自动创建集合。

命令:db.c_name.insert({......})

返回结果 WriteResult({ "nInserted" : 1 }) 可以看出,写入成功了。其中 nInserted: 1 表示成功插入了 1 条文档。

2.3 集合的删除

可以发现集合的插入需要显示出哪一个集合,类似,集合的删除也需要显示到哪一个集合。

命令:db.c_name.drop()

相关推荐
8***23556 小时前
在Django中安装、配置、使用CKEditor5,并将CKEditor5录入的文章展现出来,实现一个简单博客网站的功能
数据库·django·sqlite
Token_w7 小时前
openGauss:全密态数据库的金融级安全实践
数据库·安全·金融
合作小小程序员小小店7 小时前
图书管理系统,基于winform+sql sever,开发语言c#,数据库mysql
开发语言·数据库·sql·microsoft·c#
ss2737 小时前
020:共享锁深度解析:从AQS原理到高并发实践
数据库·redis·缓存
字节拾光录8 小时前
手机号存储避坑指南:从20亿级数据库实践看,为什么VARCHAR才是终极答案
java·数据库·oracle
q***465211 小时前
Win10下安装 Redis
数据库·redis·缓存
2501_9414037612 小时前
人工智能与边缘计算:智能化应用的未来引擎
mongodb
p***924813 小时前
深入理解与实战SQL IFNULL()函数
数据库·sql·oracle
q***816415 小时前
MySQL:数据查询-limit
数据库·mysql
p***924815 小时前
DBeaver连接本地MySQL、创建数据库表的基础操作
数据库·mysql