Sql Server整理
我正在阅读的那本书说明了这一点
SQL Server支持两种字符数据类型 – 常规和Unicode.常规数据类型包括CHAR和VARCHAR,Unicode数据类型包括NCHAR和NVARCHAR.不同之处在于常规字符为每个字符使用一个字节的存储空间,而Unicode字符每个字符需要两个字节.每个字符有一个字节的存储空间,选择列的常规字符类型会限制除了英语之外只有一种语言,因为只有256(2 ^ 8)个不同的字符可以用单个字节表示. 我所知道的是,如果我使用Varchar,那么我只能使用一种语言(例如印地语,印度语)和英语. Create Table NameTable ( NameColumn varchar(MAX) COLLATE Indic_General_90_CI_AS_KS ) 它显示错误“仅在Unicode数据类型上支持Collat??ion’Indra_General_90_CI_AS_KS’,并且不能应用于char,varchar或text数据类型.” 那么我在哪里误解了作者呢? 解决方法您可以找到排序列表 here以及编码类型某些排序规则仅适用于1字节编码 – 127位用于普通ASCII,128位可用于其他字符 – 印地语可能不适合128个字符,因此1字节排序规则不适用于它. 您将不得不使用nvarchar(或其他’n’前缀字符类型). – 编辑 – French_CI_AS是一个非英语的例子 排序规则启用的一个功能是语言和区域设置特定的字符排序.因此,法语!=拉丁语. 另一个例子是Arabic_CI_AS 这是一个带有阿拉伯字母的1字节编码. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- sql-server – 禁止SQL Server Management Studio自动完成
- SQL查询语法错误 – 字段名称中的空格
- SQL Server 30万条数据 搜索文本字段的各种方式对比
- entity-framework-4 – Entity Framework正在尝试创建一个数
- 通过SQL绘制杨辉三角的实现方法介绍
- sqlserver2005和orcale11g相比较,那一个更好啊?
- 使用BULK INSERT大批量导入数据 SQLSERVER
- 深入分析MSSQL数据库中事务隔离级别和锁机制
- SQL Server实现split函数分割字符串功能及用法示例
- ms访问 – 如何从MS Access数据库获取随机记录