2022年1月31日

MySQL: Variable 'character_set_client' can't be set to the value of 'NULL' 解决

开发项目时遇到一个问题,并没有使用存储过程来批量执行SQL语句。而是在Java业务处理过程中将.sql文件中的批量SQL语句分条读取,读取后一条一条执行。原先的.sql文件是使用SQL Manager导出的,需要在项目部署的时候将导出的.sql文件重新部署到新的客户端电脑上,所以需要进行批量执行SQL语句的操作。好进入正题: 在批量执行的过程中遇到Variable ‘character_set_client’ can’t be set to the value of Null的SQL。经过长时间排查,排除了数据库数据集的设置问题,排除了SQL语句的格式问题。最后发现是使用SQL Manager导出的.sql文件中有SQL语句的注释,原来是这些注释文件造成以上的报错。所以在执行类似的操作时,以后要记得删除注释语句后再执行批量SQL语句操…