Sequelize 是一个基于 promise 的 Node.js ORM, 目前支持 Postgres, MySQL, MariaDB, SQLite 以及 Microsoft SQL Server. 它具有强大的事务支持, 关联关系, 预读和延迟加载,读取复制等功能。
Sequelize 遵从 语义版本控制。 支持 Node v10 及更高版本以便使用 ES6 功能。
请通过 Getting started - 入门 来学习更多相关内容. 如果你想要学习 Sequelize API 请通过 API 参考 (英文)。
安装#
Sequelize 的使用可以通过 npm (或 yarn).
npm install --save sequelize
你还必须手动为所选数据库安装驱动程序(示例为mysql):
npm install --save mysql2
连接到数据库#
要连接到数据库,必须创建一个 Sequelize 实例. 这可以通过将连接参数分别传递到 Sequelize 构造函数或通过传递一个连接 URI 来完成:
const { Sequelize } = require('sequelize');
// 方法 1: 传递一个连接 const sequelize = new Sequelize('sqlite::memory:') // Sqlite 示例const sequelize = new Sequelize('postgres://user:pass@example.com:5432/dbname') // Postgres 示例
// 方法 2: 分别传递参数 (sqlite)const sequelize = new Sequelize({ dialect: 'sqlite', storage: 'path/to/database.sqlite'});
// 方法 3: 分别传递参数 (其它数据库)const sequelize = new Sequelize('database', 'username', 'password', { host: 'localhost', dialect: 'mysql'});
测试连接#
你可以使用 .authenticate()
函数测试连接是否正常:
try { await sequelize.authenticate(); console.log('Connection has been established successfully.');} catch (error) { console.error('Unable to connect to the database:', error);}