首页 > 文章列表 > PDO本地prepare语句报错:如何解决sql_mode冲突?

PDO本地prepare语句报错:如何解决sql_mode冲突?

174 2025-04-08

PDO本地prepare语句报错:如何解决sql_mode冲突?

使用PDO的本地prepare语句时,如何避免sql_mode冲突?

当您将PDO的PDO::ATTR_EMULATE_PREPARES属性设置为false时,可能会遇到与sql_mode相关的错误。此错误仅在使用本地prepare语句时出现,直接在MySQL中执行拼接好的SQL语句则不会报错。

解决方法

解决此问题的方法是修改MySQL的sql_mode变量。 执行以下SQL语句:

SET sql_mode = '';

这条语句将sql_mode变量重置为空字符串,从而禁用所有sql_mode设置,包括ONLY_FULL_GROUP_BY等。 这将消除与PDO本地prepare语句的冲突。

来源:1740101111