mysql - 无法使用 Angular 和 Sequelize 在 MariaDB sql server 中运行两个查询(语法错误)

标签 mysql angular mariadb

我尝试从两个不同的表中删除,但在尝试运行 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 TRANSACTIONCOMMIT

关于mysql - 无法使用 Angular 和 Sequelize 在 MariaDB sql server 中运行两个查询(语法错误),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55351134/

相关文章:

mysql - delphi 10.1 fdconnection libmysql.dll

mysql - 用于统计计数​​的数据库系统

mysql - 如何在数据库中搜索子字符串?

javascript - ngFor 与分页一起使用时的索引问题

html - Bootstrap 对话框 esc 键不起作用

mysql - 错误代码 : 1235. This version of MariaDB doesn't support 'COUNT(DISTINCT) aggregate as window function'

mysql - 创建事件以在mysql中保存数据库的方法

javascript - Angular 4 单元测试错误 - 无法在 'send' : Failed to load 'XMLHttpRequest' 上执行 'ng:///DynamicTestModule/LoginComponent.ngfactory.js'

mysql - 从 MySQL 迁移到 MariaDB 后 Prestashop 搜索速度变慢

php - MariaDb 不支持 ANY_VALUE() 函数