quotename函数的理解

quotename函数的理解首先,sqlserver里的标识符有一定的规则,比如你createtableabc123(…)那么中间含有空格,它不是符合规则的。你会写做createtable[abc123](….)即以[]来定界标识符。quotename将字串成为有效的标识符。它有什么用呢?我举个例子。你有个表名字叫做aa[]bb当某些应用动

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

首先,sqlserver里的标识符有一定的规则,比如 你
create table abc 123(…)
那么中间含有空格,它不是符合规则的。

你会写做 create table [abc 123](….)
即以[]来定界标识符。

quotename将 字串成为有效的标识符。

它有什么用呢? 我举个例子。

你有个表名字叫做 aa[]bb

当某些应用动态语句查询时 你如何写呢
exec(‘select * from aa[]bb’)
?

set @sql=’select * from ‘ + quotename(‘aa[]bb’)
exec(@sql)

当然你也可以直接写出转义的写法

select * from [aa[]]bb]

也就是说,quotename 使函数中的输入成为一个有效的标识符。
比如上例中 aa[]bb 不是一个有效的标识符。

简单来说吧比如你有一个表,名字叫 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))

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/164281.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • TTL转RS232电路–分享原理图和参考资料

    RS232串口经常用到,本文分享下RS232协议方面基本点,并介绍一种简单的串口TTL(3.3V)电平转换为RS232电平的电路,这个电路是经过制板验证过的。使用芯片MAX3232E(tssop16封装),电源用3.3V,电路如下图MAX3232是支持两路uart转成RS232,分享的电路只接了一路,如有需要可以接两路另外上面电路是没有做隔离的,如果要做成隔离式的,可以加上光电开关。…

    2022年4月6日
    73
  • docker端口映射原理_docker修改端口映射

    docker端口映射原理_docker修改端口映射一、安装RabbitMQ[root@localhost~]#dockerpsCONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTS

    2022年10月18日
    3
  • 记忆化搜索(递归)讲解「建议收藏」

    记忆化搜索(递归)讲解「建议收藏」记忆化搜索

    2022年7月26日
    5
  • sublime激活码-激活码分享

    (sublime激活码)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.htmlS32PGH0SQB-eyJsaWN…

    2022年3月26日
    312
  • Java 实习生(月薪 3k-5k 水平)应具备哪些知识、能力?给学弟学妹们支招

    我10年前在一家外企做Java实习生的时候,就差不多这个水平((月薪3k-5k),10多年过去了,可以稍微把目标放得大一点,比如说8k-10k,我觉得也不是不可能!在一线城市找一份靠谱的实习工作我觉得还是不难的,怕就怕有些学弟学妹盲目乐观,以为能找一份不错的实习工作,结果碰一鼻子灰,最后心灰意冷,可能就转行了。或者盲目悲观,大四了呀,学历不咋滴呀,整天恍恍惚惚的,无心学习,最后也转行了。注意注意,只要现在立刻马上开始按照我说的学习路线开始,就一点不晚。第一,IntellijIDEA、G

    2022年4月10日
    72
  • 瑞利熵与香农熵_熵 信息

    瑞利熵与香农熵_熵 信息在信息论中,Rényi熵是Hartley熵,Shannon熵,碰撞熵和最小熵的推广。熵能量化了系统的多样性,不确定性或随机性。Rényi熵以AlfrédRény

    2022年8月3日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号