sql 代码看不懂.请高人解释一下

代码如下:select*frompf_ckmxwherespid=N'SPH00003390'等号后面的N代表什么?我在sqlserver里运行对结果没有影响!就是想知道... 代码如下:
select * from pf_ckmx
where spid=N'SPH00003390'
等号后面的N代表什么?
我在sql server 里运行对结果没有影响!
就是想知道N代表什么!
展开
 我来答
百度网友94f02eb
2013-04-07 · TA获得超过8612个赞
知道大有可为答主
回答量:7955
采纳率:74%
帮助的人:4358万
展开全部
N 表示 spid 这个字段的类型是 NCHAR 或者 NVARCHAR,这个字段的内容是以Unicode 格式存储的。

N 标识符(N 代表 SQL-92 标准中的国际语言 (National Language))。N 前缀必须是大写字母。
Unicode 数据中的每个字符都使用两个字节进行存储
AtrixNero
2013-04-07
知道答主
回答量:25
采纳率:0%
帮助的人:18万
展开全部
处理 Unicode 字符串常数中 SQL Server 时您必须在前面所有的 Unicode 字符串以大写的字母 N,"N"前缀代表在 sql-92 标准国家语言,而且必须为大写。如果您不执行前缀 Unicode 字符串常量,用 N,SQL Server 会将其转换为当前数据库的非 Unicode 代码页之前它将使用该字符串。

此表示法,必须提供与现有的应用程序的向后兼容性。例如对于"SELECT Hello"必须返回一个非-Unicode 字符串,因为许多应用程序将预期的不支持 Unicode 数据 ; 其中 SQL Server 6.5 行为继续在新语法"SELECT N'Hello '"已被添加到允许的 Unicode 字符串和从 SQL Server 7.0 的传递。
Unicode 数据传递给 SQL Server 任何时间必须前缀 Unicode 字符串,用 n。如果您的应用程序是支持 Unicode 的并且作为 Unicode 字符串常量,而 N 的前缀不是将数据发送到 SQL Server 7.0,您可能会遇到字符数据的丢失。当从 Unicode SQL Server 数据库的代码页、 Unicode 字符串中不存在 SQL Server 代码页中的任何字符的 Unicode 字符串但 N 不前缀 SQL Server 转换将会丢失。请注意此转换不相关 Autotranslation、 OemToAnsi,或 AutoAnsiToOem 都在 ODBC、 OLEDB,或 db-library 层客户端发生的转换。
如果您的应用程序不发送 Unicode 数据 SQL Server 和客户端的 ANSI 代码页匹配 SQL Server 代码页、 不需要的前缀字符串常量与 N,和您将不会遇到省略前缀的结果的数据丢失。但是,SQL Server 7.0 允许您选择一个 Unicode 排序规则不同于排序顺序的安装过程中,在某些情况下,这可能导致涉及以 N 为有不同的结果,从那些没有前缀的前缀的字符串操作。例如对于假设您在安装 SQL Server 7.0 时选择二进制排序次序 (订单比较非-Unicode 字符串时使用的排序),并选择作为 Unicode 排序规则的常规 Unicode (Unicode 排序规则用于比较 Unicode 字符串)。比较两个非-Unicode 字符串表达式 ("ABC"="abc") 将返回 False,因为字下沉字母"A"不是相当于一个小写字母"a"的二进制排序次序。中对比度,该表达式 (N'ABC = N'abc) 将返回 True。由于字符串使用 N 作为前缀,它们将被转换为 Unicode 和 Unicode 排序规则将用于比较它们。与不同的二进制排序通用 Unicode 排序规则不区分大小写,并将两个字符串视为等效。
请注意是否两个字符串常数操作数之一使用 N 作为前缀,并在另一种不是将被非-Unicode 字符串转换为 Unicode 和 Unicode 排序规则将应用时进行比较。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
renhangke
2013-04-07 · TA获得超过378个赞
知道小有建树答主
回答量:599
采纳率:0%
帮助的人:119万
展开全部
N是一个 标识符,N 表示 spid 这个字段的类型是 NCHAR 或者 NVARCHAR,这个字段的内容是以Unicode 格式存储的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友63afbbd
2013-04-07 · TA获得超过105个赞
知道答主
回答量:27
采纳率:0%
帮助的人:13.7万
展开全部
加这个表示这是 nvarchar或nchar
跟数据库的编码格式有关
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式