Nodejs环境下的非关系数据库MongoDB的CRUD操作
目前市面上流行的数据库分为两类:
一类是关系型数据库,典型的如:MySql、甲骨文的oracle、微软的acess。另一类是非关系型数据库(Not Only SQL ),其中有本次介绍的MongoDB。
MongoDB的介绍:
1、是基于分布式的文件存储的数据库(由c++)。
2、是一个基于关系数据库和非关系数据库之间的产品。
3、是非关系数据库当中功能最丰富、最像关系数据库的。
MongoDB数据库常用命令:
命令 | 功能描述 |
---|---|
help | 查看帮助文档 |
db.help() | 数据库的帮助文档 |
db.test.help() | 数据库下的test集合的帮助文档 |
db.test.find().help() | 当前数据库test集合的查询的帮助文档 |
show dbs | 查询当前数据库连接池中的所有的数据库 |
use 数据库名 | 有则切换到指定数据库,无则创建并切换 |
db | 查看当前是哪个数据库 |
db.status() | 查看当前数据库的状态 |
db.version() | 查看当前数据库的版本信息 |
db.getMongo() | 查看当前数据库的连接机器地址 |
db.dropDatabase() | 删除当前数据库(慎用) |
MongoDB的CRUD操作
插入数据
命令 | 描述 |
---|---|
db.集合名.insert({ }) | 插入单条记录,{}里放的是需要插入的数据 |
db.集合名.insertOne({ }) | 插入单条记录,{}里放的是需要插入的数据 |
db.集合名.insert([ {}, {}] ) | 插入多条记录,[]里放的是需要插入的数据对象列表 |
db.集合名.insertMany([ {}, {}] ) | 插入多条记录,[]里放的是需要插入的数据对象列表 |
删除数据
命令 | 描述 |
---|---|
db.集合名.delete({ }) | 删除单条记录,{}删除条件 |
db.集合名.deleteOne({ }) | 删除单条记录,{}删除条件 |
db.集合名.deleteMany( { }) | 删除多条记录,{}删除条件 |
修改数据
命令 | 描述 |
---|---|
db.集合名.updateOne({ },{ }) | 修改单条记录,第一个{}是修改条件,第二个{}需要修改的数据 |
db.集合名.updateMany( { } { }) | 修改多条记录,第一个{}是修改条件,第二个{}需要修改的数据 |
查找数据
命令 | 描述 |
---|---|
db.集合名.find ( ) | 查询当前集合的全部数据 |
db.集合名.find ( ) .pretty ( ) | 查询当前集合的全部数据,并格式化输出 |
db.集合名.find ( ).distinct ( 字段名 ) | 查询当前集合内所有记录中指定字段的数据并去重 |
db.集合名.find ( ) .count ( ) | 查询当前集合的数据的条目数 |
db.集合名.find ( { } ,{ } ) | 第一个{ }里放的是查询条件,第二个{ }里放的是显示的字段 |
MongoDB在Nodejs环境下的安装命令
cnpm i mongoose -S
mongoose在Nodejs文件中的引入
const mongoose = require ('mongoose')