MySQL Error number: 3979; Symbol: ER_NOT_ALLOWED_WITH_START_TRANSACTION; SQLSTATE: HY000 报错 故障修复 远程处理

文档解释

Error number: 3979; Symbol: ER_NOT_ALLOWED_WITH_START_TRANSACTION; SQLSTATE: HY000

Message: START TRANSACTION clause cannot be used %s

错误说明

ER_NOT_ALLOWED_WITH_START_TRANSACTION 是MySQL的一个错误,当用户试图用START TRANSACTION语句的修改会话或全局配置参数时会抛出它。此错误显示,可以使用SET语句而不是START TRANSACTION语句来更改会话和全局范围参数值。

常见案例

对会话和全局参数进行设置时可能出现ER_NOT_ALLOWED_WITH_START_TRANSACTION错误。

比如,当我们尝试将MySQL实例中的SQL模式更改为ANSI的时候

START TRANSACTION;

SET sql_mode=ANSI;

COMMIT;

在上述代码中,运行SET语句时,MySQL会出现ER_NOT_ALLOWED_WITH_START_TRANSACTION错误。

解决方法

解决此错误的最简单方法就是将SET语句放在START TRANSACTION语句的前面,而不是放在其内部。

比如:

SET sql_mode=ANSI;

START TRANSACTION;

COMMIT;

这种修改方法可以让你轻松设置会话和全局范围参数值,而不会引发ER_NOT_ALLOWED_WITH_START_TRANSACTION错误。

版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《MySQL Error number: 3979; Symbol: ER_NOT_ALLOWED_WITH_START_TRANSACTION; SQLSTATE: HY000 报错 故障修复 远程处理》
文章链接:https://zhuji.vsping.com/305096.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。