感谢您的时间。我在使用mysql2/promise包创建事务查询时遇到了麻烦。
以下是查询语句:
以下是查询语句:
await db.execute(`START TRANSACTION`);
await db.execute(`INSERT INTO user VALUES (?, ?, ?, ?, ?, ?)`, [...userDetails]);
await db.execute(`INSERT INTO account VALUES (?, ?, ?, ?, ?, ?)`, [...accountDetails]);
await db.execute(`COMMIT`);
以下是我收到的错误信息:
Error: This command is not supported in the prepared statement protocol yet
code: 'ER_UNSUPPORTED_PS',
errno: 1295,
sql: 'START TRANSACTION',
sqlState: 'HY000',
sqlMessage: 'This command is not supported in the prepared statement protocol yet'
我想知道这是否与我的查询有关?我相信在事务块中使用INSERT语句应该是完全正确的。我还尝试将每个查询组合成一个字符串,但似乎也不起作用。
start transaction
,而不是插入语句。这是 MySQL 还是 MariaDB? - Schwern