📅  最后修改于: 2023-12-03 15:05:10.687000             🧑  作者: Mango
Sequelize是一个流行的Node.js ORM(Object-Relational Mapping)库,让开发者可以方便的与关系型数据库(如MySQL、PostgreSQL、SQLite等)交互。在进行更改数据库结构时,我们通常需要创建新的迁移(migration)。
本文将介绍如何使用Sequelize创建新的migration,并提供示例代码。
在终端或命令行中运行以下命令安装Sequelize CLI:
npm install -g sequelize-cli
在你的项目根目录中,运行以下命令初始化Sequelize:
sequelize init
该命令将会在项目的根目录中创建一个名为“migrations”的文件夹,以及一些其他配置文件和示例模型文件。
在项目中的终端或命令行中,运行以下命令创建新的migration:
sequelize migration:create --name migration_name
其中,migration_name
应该替换为你要创建的migration的名称。
你也可以使用以下命令缩写:
sequelize migration:create -n migration_name
此命令会在“migrations”文件夹中创建一个新的migration文件,并添加一个时间戳于文件名的前缀。同时,Sequelize会自动为你的migration程序创建模板代码块,以便你可以添加相关的SQL语句和逻辑。
编辑新创建的migration文件,并根据你的需求添加或修改Sequelize提供的模板代码块。你可以使用Sequelize提供的模型API和查询API来操作数据库。
以下是一个例子,展示如何在一个migration中创建一个新的表:
'use strict';
module.exports = {
up: async (queryInterface, Sequelize) => {
await queryInterface.createTable('users', {
id: {
allowNull: false,
autoIncrement: true,
primaryKey: true,
type: Sequelize.INTEGER
},
username: {
type: Sequelize.STRING
},
email: {
type: Sequelize.STRING
},
createdAt: {
allowNull: false,
type: Sequelize.DATE
},
updatedAt: {
allowNull: false,
type: Sequelize.DATE
}
});
},
down: async (queryInterface, Sequelize) => {
await queryInterface.dropTable('users');
}
};
在项目的终端或命令行中运行以下命令运行migration:
sequelize db:migrate
此命令会将新的migration应用于数据库,并提供详细的日志信息。
创建和运行migration是Sequelize ORM中常用的操作之一。通过创建新的migration来修改数据库结构,Sequelize使得修改数据库结构变得非常方便,同时也保证了数据一致性。
在本文中,我们展示了如何使用Sequelize CLI创建和编辑新的migration文件,以及如何运行迁移。希望这可以对Sequelize新手提供帮助。