IGNORE_SPACE SQL 模式可用于修改解析器处理空白敏感的函数名称的方式。以下是我们可以使用 IGNORE_SPACE SQL 模式的情况 –
案例-1 – 当 IGNORE_SPACE SQL 模式被禁用时
禁用 IGNORE_SPACE SQL 后模式下,当名称和后面的括号之间没有空格时,解析器会将名称解释为函数调用。当函数名称在非表达式上下文中使用时也会发生这种情况。可以从以下查询中理解 –
mysql> Create table SUM(Id Int);ERROR 1064 (42000): You have an error in your SQL syntax;check the manual that corresponds to your MySQL server version for theright syntax to use near 'SUM(Id Int)' at line 1
登录后复制
现在我们可以使用空格或将名称放在引号中来消除错误并使名称被视为标识符。以下语句做了同样的事情 –
Create table SUM (id int);Create table ‘SUM’(id int);Create table ‘SUM’ (id int);
登录后复制
情况 2 – 当启用 IGNORE_SPACE SQL 模式时
当我们启用此模式时,解析器放宽了函数名和函数名之间不能有空格的要求后面的括号。例如,启用 IGNORE_SPACE SQL 模式后,以下两个函数调用都是合法的 –
Select SUM(Salary) from employee;Select SUM (Salary) from employee;
登录后复制
但是,在这种情况下,解析器会将函数名称视为保留字。这意味着名称后面的空格不再代表标识符。
以上就是SQL模式IGNORE_SPACE有什么用?的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/1509119.html