sqlserver服务器排序规则数据库排序规则不一样

sqlserver服务器排序规则数据库排序规则不一样,第1张

Unicode 排序规则的基本原则是:

1、按照字符的 Unicode 编码值从小到大排序;

2、如果两个字符的 Unicode 编码值相同,则按照字符的长度从小到大排序;

3、如果两个字符的 Unicode 编码值和长度都相同,则按照字符的字母顺序从小到大排序。

物理排序是指对数据库中按某一字段中的逻辑关系进行排序,将在硬盘上对数据库表中的所有数据重新写入,这称为物理排序逻辑排序只是按逻辑关系排完顺序后,生成一年索引表,并不对硬盘上的数据进行重新整理和重写入

字符集一般是utf8 排序也选utf8 一般选择和表一样。

通过mysql命令修改:修改数据库的字符集 mysql>use mydb mysql>alter database mydb character set utf-8;

创建数据库指定数据库的字符集 mysql>create database mydb character set utf-8;

通过配置文件修改: 修改/var/lib/mysql/mydb/dbopt default-character-set=latin1 default-collation=latin1_swedish_ci 为 default-character-set=utf8 default-collation=utf8_general_ci 重起MySQL。

扩展资料:

Navicat Premium 使能简单并快速地在各种数据库系统间传输数据,或传输一份指定 SQL 格式及编码的纯文本文件。这可以简化从一台服务器迁移数据到另一台服务器的类型的进程。不同数据库的批处理作业也可以计划并在指定的时间运行。

不同数据库的批处理作业可以计划并在指定的时间运行。其他功能包括导入向导、导出向导、查询创建工具、报表创建工具、资料同步、备份、工作计划及更多。

参考资料来源:百度百科-navicat

语句:

select SERVERPROPERTY('Collation') --查看默认排序规则

select SERVERPROPERTY('SqlCharSetName')--查看排序使用字符集名称

至于sqlserver的字符集个人认为就是windows的字符集。

排序规则还可以通过SSMS中右键查看数据库属性里的‘维护'。

你要求的排列没有什么规律呀。 一般都是用 order by 字段名 DESC 倒叙排列 或者order by 字段名 asc 正序排列 ORACEL的默认排序是 1、用了Oracle的堆表(如果你建表时候没有指定表类型,默认就是堆表) 2、按照且仅按照一个有大量重复数据的字段排序 而且oracle11G已经取消了这种默认的排序机制,目的就是为了能在最短的时间返回出结果给 *** 作者。

什么叫排序规则呢?MS是这样描述的:"在 Microsoft SQL Server 中,

字符串的物理存储由排序规则控制。排序规则指定表示每个字符的位模式以及存

储和比较字符所使用的规则。"

在查询分析器内执行下面语句,可以得到SQL SERVER支持的所有排序规则。

select from ::fn_helpcollations()

排序规则名称由两部份构成,前半部份是指本排序规则所支持的字符集。

如:

Chinese_PRC_CS_AI_WS

前半部份:指UNICODE字符集,Chinese_PRC_指针对大陆简体字UNICODE的排序规则,按拼音排序。

Chinese_PRC_Stroke 表示按汉字笔画排序;

排序规则的后半部份即后缀 含义:

_BIN 二进制排序

_CI(CS) 是否区分大小写,CI不区分,CS区分(case-insensitive/case-sensitive)

_AI(AS) 是否区分重音,AI不区分,AS区分(accent-insensitive/accent-sensitive)

_KI(KS) 是否区分假名类型,KI不区分,KS区分(kanatype-insensitive/kanatype-sensitive)

_WI(WS) 是否区分宽度 WI不区分,WS区分(width-insensitive/width-sensitive) 

区分大小写:如果想让比较将大写字母和小写字母视为不等,请选择该选项。

区分重音:如果想让比较将重音和非重音字母视为不等,请选择该选项。如果选择该选项,

比较还将重音不同的字母视为不等。

区分假名:如果想让比较将片假名和平假名日语音节视为不等,请选择该选项。

区分宽度:如果想让比较将半角字符和全角字符视为不等,请选择该选项。

针对市面上有部份应用系统或者ERP系统对于数据库的排序规则是有要求,若安装数据库时没有留意,采用默认安装后,导致应用打开出现异常或者乱码现象。其实不用再卸载重装,通过如下步骤进行更改,节省大量的时间:

1、先停止需要变更 sqlserver 的服务 : 在 运行命令行中 servicesmsc 命令,在打开的服界面打到并关闭sql server 的服务;(直接通过 Net stop mssqlserver 语句也可以关闭SQL Server 后台服务)

2、执行命令:(cmd命令行)

F:>Setup /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=MSSQLSERVER /SQLSYSADMINACCOUNTS=administrator /SAPWD= /SQLCOLLATION=Chinese_PRC_BIN

参数介绍:

InstanceName : MSSQLSERVER 默认为:MSSQLSERVER

SQLSYSADMINACCOUNTS: administrator 默认为:administrator

StrongPassword : sa账号的密码

CollationName : Chinese_PRC_BIN (根据实际情况需要填写)

F:>setup为安装文件存放路径;

3、等几分钟。出现成功提示

4、执行命令 Net start mssqlserver 启动 SqlServer

5、原有各个数据库会被移出,需要手动进行“附加数据库”数据库 *** 作

以上就是关于sqlserver服务器排序规则数据库排序规则不一样全部的内容,包括:sqlserver服务器排序规则数据库排序规则不一样、数据库的数据物理排列顺序和数据逻辑排列顺序有什么区别能详细说说么、navicat 工具新建数据库时,字符集 和 排序规则,是什么意思啊,又该怎么选择等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9704274.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存