zoukankan      html  css  js  c++  java
  • 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'.
  • 相关阅读:
    js进阶 12-2 彻底弄懂JS的事件冒泡和事件捕获
    js进阶 12-1 jquery的鼠标事件有哪些
    css3-11 如何实现2D动画
    ECLIPSE IDEA 调音 1
    vim note(3)
    SyntaxHighlighter代码高亮插件
    POI使用汇总
    C和指针 (pointers on C)——第三章——数据
    写了一个初中同学——为了有效地完成现有的知识积累
    [DB][mybatis]MyBatis mapper文件引用变量#{}与${}差异
  • 原文地址:https://www.cnblogs.com/yugu/p/2123796.html
Copyright © 2011-2022 走看看