博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQL中N $ # @的作用
阅读量:6956 次
发布时间:2019-06-27

本文共 945 字,大约阅读时间需要 3 分钟。

SQL中N $ # @的作用 declare @sql nvarchar(4000) set @sql= N'select @TotalRecords=count(*) from ' + N'(' + @sqlFullPopulate + N') a ' EXEC sp_executesql @sql,N'@TotalRecords int output', @TotalRecords output

问题:@sql= 后面有个N, N 起什么作用?

答案:       加上 N 代表存入数据库时以 Unicode 格式存储。       N'string' 表示string是个Unicode字符串

      Unicode 字符串的格式与普通字符串相似,但它前面有一个 N 标识符(N 代表 SQL-92 标准中的国际语言 (National Language))。N 前缀必须是大写字母。例如,'Michél' 是字符串常量而 N'Michél' 则是 Unicode 常量。Unicode 常量被解释为 Unicode 数据,并且不使用代码页进行计算。Unicode 常量确实有排序规则,主要用于控制比较和区分大小写。为 Unicode 常量指派当前数据库的默认排序规则,除非使用 COLLATE 子句为其指定了排序规则。Unicode 数据中的每个字符都使用两个字节进行存储,而字符数据中的每个字符则都使用一个字节进行存储。有关更多信息,请参见使用 Unicode 数据。

· 下划线(_),at符号(@),或者数字符号(#)

在SQL Server中以这些符号作为标识符的开始具有特殊的含义。一个以at符号(@)开头的标识符表示一个本地的变量或者参数。一个以数字符号(#)开头的标识符代表一个临时表或者过程。一个以两个数字符号(##)开头的标识符标识的是一个全局临时对象。一些Transact-SQL函数的名字以两个at符号(@@)开头。为了避免与这些函数混淆,推荐你不要使用两个at符号(@@)开头的标识符。接下来的字母可以是以下的任意几种:

· Unicode Standard 2.0定义的字母

· 来自基础拉丁文或者其他语音的十进制数字

· at符号(@),美元符号($),数字符号(#),或者下划线

转载地址:http://mcmil.baihongyu.com/

你可能感兴趣的文章
使用scrapy抓取Youtube播放列表信息
查看>>
Linux备份策略解析
查看>>
eclipse maven 刷新报错
查看>>
给出两个单词,找到它们的最短距离 (以它们之间隔了多少个单词计数)。
查看>>
Graphical installers are not supported by the VM解决办法
查看>>
我的大学之路---2012在迷雾中前进
查看>>
小学生都能看懂的表达式计算(图解)
查看>>
物联网有没有创新的思维模式?如果有,会是什么?
查看>>
微会动微信现场互动:年会策划之用产品思维搞定年会
查看>>
利用STP生成树协议实现负载均衡
查看>>
给定一个串,去掉连续的重复字母,
查看>>
我的友情链接
查看>>
MSR2010配置小记
查看>>
微信video标签全屏无法退出bug
查看>>
[转]PostgreSQL 中文资料汇总
查看>>
那些被疯狂追求的女孩,后来怎么样了?
查看>>
(转载)Windows 7 Ultimate(旗舰版)SP1 32/64位官方原版下载(2011年5月12日更新版)...
查看>>
孟岩:通证(token)和通证经济的目的在于改善现有经济的效率性
查看>>
杜鹃演绎奢华春装大片
查看>>
mongoDb
查看>>