SQL Server与MySQL中排序规则与字符集是什么

技术SQL Server与MySQL中排序规则与字符集是什么这篇文章主要讲解了“SQL Server与MySQL中排序规则与字符集是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来

本文主要讲解“SQL Server和MySQL中有哪些排序规则和字符集”,简单明了,易学易懂。现在,请跟随边肖的思路一起学习和学习“SQL Server和MySQL中的排序规则和字符集是什么”!

字符集排序规则

字符集是不同语言的字符编码集合,如UTF-8字符集、GBK字符集、GB2312字符集等。不同的字符集使用不同的规则来编码字符。排序规则是基于特定字符集的特定字符排序方法。排序规则基于字符集,是排序方法维度中字符集的一部分。

排序规则取决于字符集。一个字符集可以有多种排序规则,但是一个排序规则只能基于某个字符集,比如汉字集,也就是可以按照拼音、姓氏笔画等等排序的汉字。对于英语来说,没有拼音和姓氏笔画,但可以分为区分大小写、不区分大小写等,而其他语言则有自己特定的排序规则。

在SQL Server中,任何字符集的数据库都可以存储任何语言的字符。

不代表拉丁字符集数据不能存储中文,汉字字符集数据库不能存储蒙文(只要操作系统本身支持)。在sqlserver中,nvarchar(或nchar)可以用于任何具有任何字符集(实际上是排序规则)的数据库(或字段),nvarchar(或nchar)可以存储任何非unicode字符。至于排序规则,它们是根据不同字符集支持的不同排序规则人工定义的。

00-1010归类只是指定存储数据的归类(比较)规则,换句话说,归类已经包含字符集的信息。因此,在sqlserver中,不需要关心字符集,只需要关心排序规则。在sqlserver中,只能指定排序规则(不能直接指定字符集)。例如,在截图中,您只能指定排序规则,即字符集。

SQL  Server与MySQL中排序规则与字符集是什么

00-1010如上所述,排序规则依赖于字符集。一个字符集可以有多个排序规则,但一个排序规则只能基于某个字符集。以下是MySQL中排序规则和字符集的对应关系。

SQL  Server与MySQL中排序规则与字符集是什么

MySQL的数据库构建语法相当蹩脚。可以指定字符集和排序规则。如果指定的排序规则低于字符集,则没有问题。如果指定的排序规则不低于字符集,将会报告错误。

例如,在下面的句子中,排序规则utf8_bin是字符集utf8下的排序规则,执行这个语句没有问题。

createdatabasettest _ database 2 charsetutf8 collateutf8 _ bin;例如,在下面的句子中,排序规则latin1_bin不是字符集utf8下的排序规则,执行此语句将会给出一个错误。

createdatabasettest _ database 2 charsetutf8 collaterate 1 _ bin;SQL  Server与MySQL中排序规则与字符集是什么

以上是字符集和排序规则在sqlserver和MySQL中的一些基本应用,下面我们来谈谈常用排序规则的区别。

SQL Server中的字符集和排序规则

或以上是某个字符集常用的三种排序规则。以下是常见的utf8示例。

utf8 _ genus _ ci不区分大小写,ci是不区分大小写的缩写,即不区分大小写。

Utf8_general_cs区分大小写,cs是区分大小写的缩写,即区分大小写。但是目前MySQL版本不支持类似* * * _ genus _ cs的排序规则,所以改用utf8_bin。

Utf8_bin将字符串中的每个字符存储为二进制数据,区分大小写。

然后,它也区分大小写。utf8_general_cs和utf8_bin有什么区别?

Cs区分大小写是区分大小写的缩写,即区分大小写;Bin表示二进制

制,也就是二进制编码比较。

  • utf8_general_cs排序规则下,即便是区分了大小写,但是某些西欧的字符和拉丁字符是不区分的,比如ä=a,但是有时并不需要ä=a,所以才有utf8_bin

  • utf8_bin的特点在于使用字符的二进制的编码进行运算,任何不同的二进制编码都是不同的,因此在utf8_bin排序规则下:&auml;<>a

  • 在utf8_genera_ci的情况下A=a,&auml;=a

    SQL Server与MySQL中排序规则与字符集是什么

    在utf8_bin排序规则下,A<>a,&auml;<>a

    SQL Server与MySQL中排序规则与字符集是什么

    所以要想区分大小写,有没有特殊需求,就直接使用utf8_bin(实际上***_general_cs在MySQL中本身就不支持,在SQL Server中支持)。以上字符集的特点以及使用情况在SQL Server中表现为类似。

    感谢各位的阅读,以上就是“SQL Server与MySQL中排序规则与字符集是什么”的内容了,经过本文的学习后,相信大家对SQL Server与MySQL中排序规则与字符集是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

    内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/133170.html

    (0)

    相关推荐

    • 怎么实现Zynq-7000开发环境的搭建

      技术怎么实现Zynq-7000开发环境的搭建本篇文章给大家分享的是有关怎么实现Zynq-7000开发环境的搭建,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

      攻略 2021年12月10日
    • 对我影响最大的人,对我影响最大的人妈妈作文

      技术对我影响最大的人,对我影响最大的人妈妈作文她可以不知道我的名字对我影响最大的人,不知道我的性格,甚至不必认识我,不必了解我,就可以爱我爱得那样刻骨铭心。 是的,她就是我的妈妈。是她给了我第一份最纯洁最美丽的爱。

      生活 2021年10月27日
    • Mac电脑上怎么设置五笔输入法教程

      技术Mac电脑上怎么设置五笔输入法教程本篇内容介绍了“Mac电脑上怎么设置五笔输入法教程”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,

      攻略 2021年10月23日
    • 函数重载Oracle和PG的异同是什么

      技术函数重载Oracle和PG的异同是什么本篇内容主要讲解“函数重载Oracle和PG的异同是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“函数重载Oracle和PG的异

      攻略 2021年11月5日
    • 在SQL Server中如何查询资料库的TABLE数量与名称的sql语句

      技术在SQL Server中如何查询资料库的TABLE数量与名称的sql语句今天就跟大家聊聊有关在SQL Server中如何查询资料库的TABLE数量与名称的sql语句,可能很多人都不太了解,为了让大家更加了解,小编给大

      攻略 2021年12月1日
    • 租用台湾云服务器有什么好处

      技术租用台湾云服务器有什么好处台湾云服务器采用虚拟化技术将高性能服务器集群分为多个虚拟服务器。这些虚拟服务器是私有的,因为用户不必与同一物理服务器上的其他方共享磁盘空间、CPU、内存。台湾云服务器租用对您网站的好处 租用

      礼包 2021年12月8日