安装
npm i mongoose --save // mongoose
npm i sequelize --save // sequelize
//需要手动为所选数据库安装驱动程序
npm install --save mysql
使用
1、引入并连接数据库
const mongoose = require('mongoose'); // 引入mongoose
/* 连接到数据库 mongoose.connect('mongodb://端口号/数据库'); */
mongoose.connect('mongodb://localhost/Test');
// 如果有用户名与密码的连接方式 mongoose.connect('mongodb://用户名:密码@地址:端口号/数据库');
mongoose.connect('mongodb://root:111111@localhost/Test');
const Sequelize = require('sequelize'); // 引入 sequelize
const sequelize = new Sequelize('Test', 'root', 'root', { //三个参数分别是 数据库、用户名、密码
host: 'localhost', //数据库地址,默认本机
port:3306, //端口号
dialect: 'mysql',
pool: { //连接池设置
max: 5,
min: 0,
idle: 10000
}
});
2、操作表(集合)
2.1 创建模型
// 使用mongoose需要先定义Schema,可以理解为表结构的定义,此操作的对象应该和数据库表(集合)的字段一样
const TestSchema = mongoose.Schema({
name : String,
age : Number,
sex : String
})
//创建模型
var Test = mongoose.model('Test' , TestSchema,‘Test’)
// model里的 参数 1:模型名称(首字母大写),参数 2:定义的Schema, 参数 3:数据库表(集合)的名称)
//创建一个模型
const Test = sequelize.define('Test', {
name: {
type: DataTypes.STRING,
allowNull: false
},
age: {
type: DataTypes.NUMBER,
allowNull: false
},
sex: {
type: DataTypes.STRING,
allowNull: false
});
2.2 查询数据
// 查询所有
Test.find(); //mongoose
Test.findAll(); //sequelize
// 条件查询
Test.find({ 'age': 20 }); //mongoose
Test.findAll( { where { age: 18 } } ); //sequelize
2.3 增加数据
// mongoose 增加的数据必须使用实例化对象,然后调用save()函数
const Test = new Test({
name : 'Amy' ,
age : 22,
sex : '女'
})
Test.save()
// .create()方法是使用 .build() 构建未保存实例并使用instance.save() 保存实例的简写形式.
const Test = Test.create({
name: 'Alice',
iage : 22,
sex : '女'
})
2.4 删除数据
Test.remove( { name : 'John' } ); //mongoose
Test.destroy( { where: { name: 'Jane' } }); //sequelize
2.5 修改数据
Test.update({ name: 'Amy' } ,{ name: 'Alice' } }); //mongoose
Test.update({ name: 'Doe' },{ where: { name: 'John' } } ); //sequelize