📅  最后修改于: 2023-12-03 15:05:10.658000             🧑  作者: Mango
Sequelize 迁移是一种管理数据库模式变化的工具。使用迁移,你可以向数据表中添加列、修改结构或删除已有列。本文将讲解如何使用 Sequelize 迁移添加列外键。
下面是一个示例,展示如何使用 Sequelize 迁移来添加外键:
module.exports = {
up: (queryInterface, Sequelize) => {
return queryInterface.addColumn(
'Orders', // 表名
'customerId', // 列名
{
type: Sequelize.INTEGER,
references: {
model: 'Customers', // 参考表名
key: 'id' // 参考列名
},
onUpdate: 'CASCADE',
onDelete: 'SET NULL'
}
);
},
down: (queryInterface, Sequelize) => {
return queryInterface.removeColumn('Orders', 'customerId');
}
};
这段代码使用 addColumn
方法为 Orders 表格添加了一列名为 customerId 的外键。具体地,在 options 参数中,我们指定了:
在 down
方法中,我们再次使用了 Sequelize 迁移的内置方法 removeColumn
来将刚才添加的列删除。
Sequelize 迁移可以轻松方便地为数据表添加列外键,只需通过 addColumn
方法指定实体名称、列名和选项。在 options 中,我们使用 references
来指定参考表和参考列,并使用 onUpdate
和 onDelete
来定义外键的级联更新和级联删除行为。