SQL学习笔记之二:QUOTENAME函数

--SQL学习笔记二
--
函数QUOTENAME
--
功能:返回带有分隔符的Unicode 字符串,分隔符的加入可使输入的字符串成为有效的Microsoft SQL Server 2005 分隔标识符。
--
语法
QUOTENAME ( 'character_string' [ , 'quote_character' ] ) 

--举例说明:

--比如你有一个表,名字叫index
--
你有一个动态查询,参数是表名
declare @tbname varchar(256)
set @tbname='index'
---查这个表里的数据:
print('select * from '+@tbname)
exec('select * from '+@tbname)

--这样print出来的数据是
select * from index

--因为index是字键字,肯定出错,加上括号就可以了:
select * from [index]

--这便有了QUOTENAME,即:
print('select * from '+QUOTENAME(@tbname))
--结果:select * from [index]
exec('select * from '+QUOTENAME(@tbname))

--结论
/*

初步理解为解决有些对象是SQLSERVER关键字的情况,即用该函数规范对象名,以便程序顺利运行
*/