gpt4 book ai didi

mysql - 如何使用 Sequelize 在 Node.js 中延迟触发器创建

转载 作者:行者123 更新时间:2023-11-29 12:30:12 29 4
gpt4 key购买 nike

我在使用 Node.js + Express + Sequelize 创建触发器时遇到问题。

我有用于模型对象(即用户、设备等)的表,并连接表来表达它们的多对多关联(即 hasDevice)。

我的麻烦来自于我无法使用

创建一个简单的触发器
sequelize.query('query', null, {raw: true});

因为表创建是完全异步的,我不知道何时创建触发器的表(特别是我收到以下错误:

Possibly unhandled SequelizeDatabaseError: ER_NO_SUCH_TABLE: Table 'express612.hasDevice' doesn't exist

预先感谢您的帮助。

最佳答案

表是异步创建的,因此您需要在创建表后的回调中执行任何依赖于表创建的工作(例如触发器创建)。根据文档,这似乎是在 .sync 方法之后,例如:

http://sequelizejs.com/articles/express#the-application

您可以在 .sync().then 的回调中创建触发器

关于mysql - 如何使用 Sequelize 在 Node.js 中延迟触发器创建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27678439/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com