相关疑难解决方法(0)

SQL国家字符(NCHAR)数据类型的真正含义是什么?

和,CHAR (CHARACTER)以及VARCHAR (CHARACTER VARYING),SQL提供NCHAR (NATIONAL CHARACTER)NVARCHAR (NATIONAL CHARACTER VARYING)类型.在某些数据库中,这是用于字符(非二进制)字符串的更好的数据类型:

  • 在SQL Server中,NCHAR存储为UTF-16LE,是唯一可靠地存储非ASCII字符的方法,仅CHAR作为单字节代码页;

  • 在Oracle中,NVARCHAR可以存储为UTF-16或UTF-8而不是单字节排序规则;

  • 但在MySQL,NVARCHARVARCHAR,所以它没有什么区别,任一类型的可以存储使用UTF-8或任何其他排序规则.

那么,NATIONAL实际上在概念上意味着什么呢?供应商的文档仅告诉您自己的DBMS使用哪些字符集,而不是实际的基本原理.与此同时,SQL92标准对该功能的解释更为有帮助,仅说明NATIONAL CHARACTER存储在实现定义的字符集中.而不是仅仅CHARACTER存储在实现定义的字符集中.这可能是一个不同的实现定义的字符集.或不.

谢谢,ANSI.Thansi.

是否应该NVARCHAR用于所有字符(非二进制)存储目的?是否有当前流行的DBMS,它会做一些不受欢迎的事情,或者只是不识别关键字(或N''文字)?

sql t-sql sql-server oracle nvarchar

50
推荐指数
2
解决办法
2万
查看次数

我是否在unicode的"insert into"语句中使用了前缀N?

像:
插入表(col)值(N'multilingual unicode strings')

我正在使用SQL Server 2008,我已经使用nVarChar作为列数据类型.

sql-server unicode

10
推荐指数
1
解决办法
1万
查看次数

标签 统计

sql-server ×2

nvarchar ×1

oracle ×1

sql ×1

t-sql ×1

unicode ×1