我尝试从两个不同的表中删除,但在尝试运行 SQL 命令时出现错误。 我正在尝试合并这两个查询:
defaultAdapter.query('DELETE FROM reasons WHERE name = :name')
defaultAdapter.query('DELETE rt FROM reason_to_transaction rt INNER JOIN reasons r ON r.id = rt.reason_id WHERE name = :name')
我运行这段代码:
defaultAdapter.query('DELETE FROM reasons WHERE name = :name;DELETE rt, r FROM reason_to_transaction rt INNER JOIN reasons r ON r.id = rt.reason_id WHERE id = :id',
有人可以告诉我 Sequelize 方法(SQL)中 2 个查询的正确语法是什么吗? 当我运行此命令时,出现此错误:
Unhandled rejection SequelizeDatabaseError: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'DELETE rt, r FROM reason_to_transaction rt INNER JOIN reasons r ON r.id = rt.rea' at line 1
at Query.formatError
最佳答案
它不允许您将两个查询合并到一个调用中。
如果您需要将它们绑定(bind)在一个“事务”中(全部或无),那么您需要某种形式的START TRANSACTION
和COMMIT
。
关于mysql - 无法使用 Angular 和 Sequelize 在 MariaDB sql server 中运行两个查询(语法错误),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55351134/