存储过程中SET QUOTED_IDENTIFIER ON有什么用?
来源:网络收集 点击: 时间:2024-05-02通过sqlserver数据库管理工具,创建的存储过程的大致结构如图所示,在代码的最前面默认会有一个 SET QUOTED_IDENTIFIER ON 的语句,但是,这句话到底有什么用呢?或许很多人都不太明白

下面开始演示这个语句的作用。在sql server management studio管理工具中点击【新建查询】,创建一个新的sql语句书写窗口,后续的所有sql语句,都在这个新的窗口中演示

开启SET QUOTED_IDENTIFIER ON,然后试着创建一个表名字为distinct的表,当写完sql,就可以看到distinct下面有一道红色的波浪线,这就表示有语法错误了

点击上面菜单的 勾勾 图标,检查当前窗口中的sql语法是否正确。从检测结果可以看出,当开启SET QUOTED_IDENTIFIER ON的时候,distinct与系统关键字重复了不能通过

假设开启SET QUOTED_IDENTIFIER ON,而且一定要创建distinct为名字的表名,这个时候就可以使用双引号了,将distinct括起来即可。写完之后,点击执行按钮,就可以看到这个表创建成功了

关闭SET QUOTED_IDENTIFIER OFF,此时distinct虽然有双引号括起来,仍然会报语法错误的,sql语句不会得到执行

关闭SET QUOTED_IDENTIFIER OFF,如果去掉distinct括起来的双引号,仍然会报语法错误,sql语句还是不会得到执行。
总结:
1)SET QUOTED_IDENTIFIER ON:与系统关键字重复的,允许使用双引号括起来,就能正常使用。注意是双引号
2)SET QUOTED_IDENTIFIER OFF:与系统关键字重复的,不允许使用

版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.ff371.cn/art_649933.html