Sequelize 是一个基于 Promise 的 Node.js ORM,目前支持 Postgres、MySQL、SQLite 和 Microsoft SQL Server。它具有强大的事务支持,关联关系、读取和复制等功能。
所谓ORM是指对象关系映射,通过使用描述对象和数据库之间映射的元数据,将面向对象语言程序中的对象自动持久化到关系数据库中。本质上就是将数据从一种形式转换到另外一种形式
以下以使用mysql数据库作为案例
为了演示,首先新建文件夹初始化项目
$ mkdir sequelizeTest // 新建文件夹
$ cd sequelizeTest // 进入文件夹
$ npm init --yes // 初始化项目
1. 安装
// Using NPM
$ npm install --save sequelize
// 使用哪种数据库选择不同的安装
$ npm install --save mysql2
$ npm install --save pg pg-hstore # Postgres
$ npm install --save mariadb
$ npm install --save sqlite3
$ npm install --save tedious # Microsoft SQL Server
我这里安装mysql2
2.数据库连接测试
在项目文件夹下新建一个index.js
(async function() {
const Sequelize = require('sequelize');
// 第一个参数是数据库名,第二个参数是数据库用户名,第三个参数密码
// 第四个参数配置参数 包括地址,数据库类型等
const sequelize = new Sequelize('list', 'root', '123456', {
host: 'localhost',
dialect: 'mysql'
});
// 测试是否连接函数
sequelize.authenticate()
.then(() => {
console.log('连接成功');
console.log("hello");
})
.catch(err => {
console.log(err);
})
})()
使用nodemon 作为热更新启动,这样就不用每次重启了
$ npm install nodemon -g
启动项目
$ nodemon index
显示如下,说明已成功