我正在读的书说
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
)
它向我显示错误“
Collation’Indic_General_90_CI_AS_KS’仅在Unicode数据类型上受支持,不能应用于char,varchar或text数据类型。”
那么我在哪里误解了作者?
谢谢
您可以 在此处找到排序规则列表以及编码类型
某些归类仅适用于1字节编码-127位用于常规ASCII,而128位可用于其他字符-印地语可能不适合128个字符,因此1字节归类不适用于它。
您将必须使用nvarchar(或其他带有’n’前缀的字符类型)。
- 编辑 -
French_CI_AS(非英语)示例
归类支持的功能之一是字符的语言和区域特定排序。因此,法语为==拉丁语。
另一个例子Arabic_CI_AS
这是一个1字节的阿拉伯字母编码。
1. UI 节点排序 UI 的渲染排序采用的是一个广度优先的排序方式,每一个 UITransform 组件身上都有一个 priority 属性,根据 priority 的值来调整节点顺序。排序从根节点下的子节点开始,根据子节点的优先级来确定整体的渲染结构,也就是根节点下的子节点的排序已经决定了最终的渲染顺序。每一个节点下的所有子节点的 priority 则用来确定在当前节点下的渲染顺序。 举个例子
问题内容: 查看我的产品日志后,我提到了一些错误: Alghout我在cfg教义下拥有UTF-8默认值: 看来我所有的MySQL表都在其中,所以我的问题是: 我可以为所有表手动将排序规则更改为,而没有任何复杂性/注意事项吗? 问题答案: 了解以下定义会有所帮助: 甲 字符编码 信息的每个符号是如何以二进制表示(并因此存储在计算机)。例如,符号(U + 00E9,拉丁小字母E急性)被编码为在UTF-
问题内容: 如何查看表具有的排序规则?IE浏览器,我想看: 问题答案: 显示有关表的信息,包括排序规则。 例如
问题内容: 我有两个表,它们使用的是不同的排序规则。不允许串联来自具有不同排序规则的表中的列,例如,不允许使用以下SQL, 我的问题是,如何在不破坏表数据的情况下更改表的排序规则? 在此先感谢,乔治 问题答案: 您可以根据需要随时更改列排序规则。 例如 “数据库默认值”可以是您要使用的任何排序规则。 您可以使用以下方法永久更改列的排序规则
本文向大家介绍Mysql 中文排序规则说明,包括了Mysql 中文排序规则说明的使用技巧和注意事项,需要的朋友参考一下 使用MySQL过程中,我们经常会对一个字段进行排序查询,我们一般都是想要按照中文拼音首字母进行依次排序,但mysql中进行中文排序的时候,对汉字的排序结果往往都是错误的。 这种情况在MySQL的很多版本中都存在。 如果这个问题不解决,那么MySQL将无法实际处理中文。 出现这个问
我想在基于Saxon的xslt转换中使用排序规则。源文件: 和我的转变: 这在氧气中几乎很好工作,输出为: (“”应该是第二个条目,但我想这是另一个问题) 看起来好像saxon现在想要使用作为文件。它不存在。 问题是:我如何在命令行上使用这个样式表。 如果合适的话,我还想问一下如何在两个“A”之间排序“?”但我可以在另一个问题中问这个。