• SQL SERVER中QUOTED_IDENTIFIER选型的使用


    虽然经常看到SET QUOTED_IDENTIFIER ON/OFF 这样的语句,但是不会太注意到底会有什么作用,或者说在什么情况下使用。看了联机帮助文档上得介绍,挺晕的,我打算自己通过实验,来总结一下这个选项的用法。

    一般我们在创建一个表时,不管是QUOTED_IDENTIFIER ON还是OFF ,就是这么写得:

    CREATE TABLE T(FIRST INT,SECOND INT)

    但是在SET QUOTED_IDENTIFIER_ON 之后,你可以通过双引号把表名括起来,这么写:

    CREATE TABLE "T"(FIRST INT,SECOND INT)

    第一部分:SET QUOTED_IDENTIFIER ON

    特别情况是在我们的表名是SQL SERVER 的保留字时,比如表名是:FROM关键字的时候,是不能写成这样的:

    CREATE TABLE FROM(FIRST INT,SECOND INT)

    运行结果:

     
    必须得写成这样:
    CREATE TABLE FROM(FIRST INT,SECOND INT)
    运行结果:
    注意:这里只能用双引号来括,不能用单引号。
     
     
    这样看来确实有点作用。那么,这个单引号有什么作用呢?他得作用就是括住字符串,而双引号则不能括住字符串,看下面的例子:
     
     
    应该是这么用:
     
    如果说现在要输出的字符串里面有双引号怎么办呢?没关系,可以直接输出:
     
    如果在要输出的字符串里面有单引号怎么办呢?只要写两个单引号就行了:
     
     
    第二部分:SET QUOTED_IDENTIFIER OFF
    这个时候,单引号和双引号都可以来括住字符串,同时也能括住对方,也就是单引号可以括住双引号,双引号也可以括住单引号:
     
     
    最后总结一下:
    1.在ON的情况下,双引号用来括住关键字和单引号(上面没有给出例子),单引号括住字符串和双引号。
    2.在OFF的情况下,双引号和单引号都是用来括住字符串的,以及对方。
    3.不管是在那种情况下,当双引号或者单引号要括住自己,比如输出 from"you     写成    "from""you"   
                                     from'you  写成 'from''you'.
  • 相关阅读:
    常用的站内搜索技术比较
    .NET中读取csv文件内容
    C#编码规范
    处理模型——检测光标是否在模型上
    数据库如何规范命名
    处理顶点——绘制三角形,线和点
    处理模型——根据地形正确倾斜模型
    处理顶点——使用索引移除冗余顶点
    处理顶点——在三角形上添加纹理
    处理模型——通过定义一个自定义的TypeWriter和TypeReader将多个对象存储在Tag属性中
  • 原文地址:https://www.cnblogs.com/yugu/p/2123796.html
Copyright © 2020-2023  润新知