目录
一、Express框架通过Mongoose模块操作MongoDB数据库
前言
1、NoSQL数据库:非关系型数据库。数据的组织形式不是二维表格。即Not Only SQL,不能使用SQL语句操作数据。适合存储超大
规模、数据长度不确定的数据,数据没有规定的格式,不需要进行任何的设置就可以自由的横向扩展
2、什么是MongoDB:是用C++编写的,用于分布式系统的数据存储。存储数据的格式是 key : value
数据库:database
数据表(table) <—— > collection(集合)
行(row) <———> document(文档)
ObjectId:类似唯一主键,长度为12个字节,通常用于生成文档的_id值
强调:在MongoDB中,每个文档都有一个 _id属性,若用户在创建文档时没有给出 _id ,MongDB会用ObjectId来为 _id生成一个,
一、Express框架通过Mongoose模块操作MongoDB数据库
1.Mongoose模块
(1)是一个对象模型工具,是对Node.js环境下操作MongoDB数据库进行了封装,可以将MongoDB数据库中的数据转换成javascript对象供用户使用。
(2)名词:
a、Schema : 它是一种以文件形式存储的数据库模型骨架,不具备对数据库操作的能力,仅仅只是数据库在程序片段中的一种表现,可以理解为表结构,实现一种映射。
b、Model : 由Schema发布生成的模型,具有抽象属性和行为的数据库操作
c、Entity : 由Model创建的实体,它的操作也会影响数据库
(3)命名规范:驼峰命名,例如:
PersonSchema:Person对应的Schema,Person的文本属性(表结构)
PersonModel:Person对应的模型。
PersonEntity:Person对应的实体