操作sql server尤其是写存储过程时,要用到各种各样的函数,今天就总结一个quotename()的用法。
1.语法:

quotename('character_string'[,'quote_character'])

[]里面的内容说明可以省略,缺省情况下,说明用'[]'引用。 
character_string,unicode字符数据构成的字符串。character_string是sysname值。 
quote_character,用作分隔符的单字符字符串,可以是单引号(')、左方括号([)或右方括号(])或者英文双引号(")。缺省情况下啊,则使用方括号作为分隔符([ ])。

2.实例
quotename函数看分隔符默认是[ ]
在sql server中做实验,可以得出如下结论:

select quotename('ab[]cde')         输出结果:[ab[]]cde]
select quotename('ab[]cde',']') 输出结果:[ab[]]cde]
select quotename('ab[]cde','') 输出结果:[ab[]]cde]
select quotename('ab[]cde','''') 输出结果:'ab[]cde'
select quotename('ab[]cde','}') 输出结果:{ab[]cde}
select quotename('ab{}cde','}') 输出结果:{ab{}}cde}

请注意,字符串 ab[]cde 中的右方括号有两个,用于指示转义符。

3.实际应用 

declare @tablename varchar(8000)
set @tablename='student'
print 'select * from '+quotename(@tablename) declare @sql varchar(8000)='select * from '+quotename(@tablename)
exec(@sql)

4.总结
quotename()的主要作用就是在存储过程中,给列名、表名等加个[]、''等以保证sql语句能正常执行。

原文链接

sql server中quotename()函数的用法(转载)的更多相关文章

  1. sql server中QUOTENAME()函数的用法

    操作sql server尤其是写存储过程时,要用到各种各样的函数,今天就总结一个quotename()的用法. 1.语法: quotename('character_string'[,'quote_c ...

  2. SQL Server中COALESCE函数的用法

    在SQL Server中COALESCE函数,会返回其参数中第一个不为NULL的参数,效果如下: SELECT COALESCE(NULL,NULL,N'A',NULL,NULL) 结果: SELEC ...

  3. SQL Server中排名函数row_number,rank,dense_rank,ntile详解

    SQL Server中排名函数row_number,rank,dense_rank,ntile详解 从SQL SERVER2005开始,SQL SERVER新增了四个排名函数,分别如下:1.row_n ...

  4. Oracle中INSTR函数与SQL Server中CHARINDEX函数

    Oracle中INSTR函数与SQL Server中CHARINDEX函数 1.ORACLE中的INSTR INSTR函数格式:INSTR(源字符串, 目标字符串, 起始位置, 匹配序号) 说明:返回 ...

  5. SQL Server中bcp命令的用法以及数据批量导入导出

    原文:SQL Server中bcp命令的用法以及数据批量导入导出 1.bcp命令参数解析 bcp命令有许多参数,下面给出bcp命令参数的简要解析 用法: bcp {dbtable | query} { ...

  6. sql server中常用方法函数

    SQL SERVER常用函数 1.DATEADD在向指定日期加上一段时间的基础上,返回新的 datetime 值. (1)语法: DATEADD ( datepart , number, date ) ...

  7. SQL Server中row_number函数的简单用法

    一.SQL Server Row_number函数简介   ROW_NUMBER()是一个Window函数,它为结果集的分区中的每一行分配一个连续的整数. 行号以每个分区中第一行的行号开头. 以下是R ...

  8. SQL Server中自定义函数:用指定的分隔符号分割字符串

    微软SQL Server数据库中包含了很多内置的函数,入下图: 它们用于处理日期.数学.元数据.字符串等. 其中最为常用的就是处理字符串,里面包含了CharIndex()等函数,非常方便使用. 但是对 ...

  9. SQL Server中的Merge关键字(转载)

    简介 Merge关键字是一个神奇的DML关键字.它在SQL Server 2008被引入,它能将Insert,Update,Delete简单的并为一句.MSDN对于Merge的解释非常的短小精悍:”根 ...

随机推荐

  1. 05 - JavaSE之数组

    一维数组 java中的数组是引用类型,分配在堆空间上. 一维数组的声明方式: type var[]; type[] var; java中声明数组时不能指定其长度,如下,因为java中的数组是分配在堆空 ...

  2. DNF NPK包名对照一览表

    文章转载自:http://bbs.exrpg.com/thread-107917-1-1.html ┌ sprite.NPK                                      ...

  3. java学习-Comparable<Integer>接口方法的实现

    基本数据类型的包装类Integer, Float, Double,Long,Byte等都实现的Comparable接口,用于列表List或数组arrays的排序 Comparable<Integ ...

  4. 解决org.apache.rat:apache-rat-plugin:0.8:check (default) on project hbase: Too many unapproved license

    maven打包的时候报错: 报错信息: [ERROR] Failed to execute goal org.apache.rat:apache-rat-plugin:0.8:check (defau ...

  5. Maven 打包遇到的问题

    [ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a ...

  6. JAR 介绍-百度百科

    JAR(Java Archive,Java 归档文件)是与平台无关的文件格式,它允许将许多文件组合成一个压缩文件.为 J2EE 应用程序创建的 JAR 文件是 EAR 文件(企业 JAR 文件). J ...

  7. Jackson xml json

    public class XMLTest { private static XmlMapper xmlMapper = new XmlMapper(); private static ObjectMa ...

  8. vue 项目其他规范

    列表 vuex数据管理 * 数据模块化:vuex数据管理-数据模块化 数据适配:vuex数据管理-数据适配 数据共享:vuex数据管理-数据共享 路由优化 keep-alive组件设置 保留滚动位置 ...

  9. 使用Spring JPA中Page、Pageable接口和Sort类完成分页排序

    显示时,有三个参数,前两个必填,第几页,一页多少个size,第三个参数默认可以不填. 但是发现这个方法已经过时了,通过查看它的源码发现,新方法为静态方法PageRequest of(page,size ...

  10. C# 如何判断ie版本号和获取注册表中的信息

    1.获取ie版本号 string ver = (new WebBrowser()).Version.ToString(); 例如:11.0.10586.103 int mainVer = (new W ...