记一次MySQL查询异常(err:1630)
使用mysql进行字符串相关函数的学习时发现,当时用函数substring时,可以正常运行,但是使用SQLyog的SQL格式器格式化SQL语句后报错,后来经过排查发现,格式化后自动在函数名后面加了空格,导致错误
-- 格式化前:
SELECT
SUBSTRING(ename, 1, 2)
FROM
emp;
-- 格式化后:
SELECT
SUBSTRING (ename, 1, 2)
FROM
emp;
后来发现,大部分的函数名和参数列表之间添加空格都不会影响SQL语句的执行,但是为了一劳永逸,查找了解决办法
在mysql的安装路径的个人配置文件my.ini
文件中添加下面语句,切记不要在末尾添加分号!
sql_mode='IGNORE_SPACE'
添加完毕后使用管理员身份运行cmd,输入以下指令重启mysql服务器
net stop mysql
net start mysql
这样即使函数之间有空格也不会报错啦!