15.MongoDB数据库
2021/12/10 2:16:59
本文主要是介绍15.MongoDB数据库,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.介绍与安装
介绍
MongoDB是非关系型数据库,基于分布式文件存储的开源数据库系统
理解关系型数据库与非关系型数据库(表就是关系)
关系型数据库(mysql)
- 关系型数据库需要数据库操作
- 关系型数据库在操作之前需要设计表结构
- 数据支持约束(唯一性,主键,默认值,非空)
非关系型数据库(MongoDB)
- 非关系数据库非常灵活
- 大多是 key-value
- 在MongoDB中
数据库=>数据库
数据表=>集合(数组)
表记录->(文档对象)
-
不需要设计表结构
-
可以任意存数据,无结构性
-
组成:数据库,集合,文档
{ 数据库名称:{ 表名称:[ 字段 ] } }
安装
下载地址 https://www.mongodb.com/try/download/community
配置环境变量
- 复制mongoDB下载的bin地址:C:\Program Files\MongoDB\Server\5.0\bin
- 打开环境变量->找到path
检测安装是否成功
命令行输入mongod --version
2.开始
启动数据库 : mongod
- 默认使用执行 mongod 命令所处盘符根目录下的/data/db 作为自己的数据存储目录,第一次执行该命令需要手动新建data/db目录,用于存储数据
- 如果想修改默认的数据存储目录 :mongod --dbpath =数据存储目录路径
关闭数据库
控制台ctrl+c
连接数据库
mongo
退出连接
exit
3.基本命令
查看显示所有数据库
show dbs
切换到指定的数据库
use 数据库名
查看当前操作的数据库
db
插入数据
mongo.表名.insert
查看表内容
db.表名.find()
查看更多表数据(数据太多加载不出来时)
it+ 回车
4.在node中操作MongoDB数据库(mongoose模块)
1.下载第三方模块mongoose => npm i mongoose
2.基本步骤
- 引入模块
const mongoose = require('mongoose')
- 创建模型(设计一个数据库)
mongoose.connect("mongodb://localhost/test1");//test1为数据库名称
- 设置文档结构(表结构)
Scheme方法
设置字段必须有 required:true
const Schema = mongoose.Schema //引入Schema方法 var userSchema = new Schema({//userSchema数据库结构方法名 username: { type: String, required: true//设置字段为必须 }, pwd: { type: String, required: true } })
- 实例化文档结构(将文档结构发布为模型)
const User = mongoose.model('User', userSchema)
- 对数据表增删改查操作(增删改查)
- 持久化保存kitty实例
5.对数据表增删改查操作
5.1增加
const admin = new User({ username: 'admin', pwd: '123456', email: '123456@qq.com' }) admin.save(function (err, ret) { if (err) { console.log('保存失败') } else { console.log('保存成功') console.log(ret)//打印结果 } })
这篇关于15.MongoDB数据库的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-24MongoDB资料:新手入门完全指南
- 2024-12-20go-zero 框架的 RPC 服务 启动start和停止 底层是怎么实现的?-icode9专业技术文章分享
- 2024-12-19Go-Zero 框架的 RPC 服务启动和停止的基本机制和过程是怎么实现的?-icode9专业技术文章分享
- 2024-12-18怎么在golang中使用gRPC测试mock数据?-icode9专业技术文章分享
- 2024-12-15掌握PageRank算法核心!你离Google优化高手只差一步!
- 2024-12-15GORM 中的标签 gorm:"index"是什么?-icode9专业技术文章分享
- 2024-12-11怎么在 Go 语言中获取 Open vSwitch (OVS) 的桥接信息(Bridge)?-icode9专业技术文章分享
- 2024-12-11怎么用Go 语言的库来与 Open vSwitch 进行交互?-icode9专业技术文章分享
- 2024-12-11怎么在 go-zero 项目中发送阿里云短信?-icode9专业技术文章分享
- 2024-12-11怎么使用阿里云 Go SDK (alibaba-cloud-sdk-go) 发送短信?-icode9专业技术文章分享