展开全部

您好,很高32313133353236313431303231363533e59b9ee7ad9431333337376263兴为您解答。1.sp_helpsort

SELECT SERVERPROPERTY ('Collation')

查看你的排序规则.

不过你的这个应该和字符集有关.

2.更改服务器排序规则

更改 SQL Server 2005 实例的默认排序规则的操作可能会比较复杂,包括以下步骤:

确保具有重新创建用户数据库及这些数据库中的所有对象所需的全部信息或脚本。

使用工具(例如大容量复制)导出所有数据。

删除所有用户数据库。

重新生成在 setup 命令的 SQLCOLLATION 属性中指定新的排序规则的 master 数据库。例如:

复制代码

start /wait setup.exe /qb INSTANCENAME=MSSQLSERVER REINSTALL=SQL_Engine REBUILDDATABASE=1 SAPWD=test SQLCOLLATION=SQL_Latin1_General_CP1_CI_AI

有关重新生成 master 数据库的详细信息,请参阅如何重新生成 SQL Server 2005 的 Master 数据库。

创建所有数据库及这些数据库中的所有对象。

导入所有数据。

注意:

可以为创建的每个新数据库指定默认排序规则,而不更改 SQL Server 2005 实例的默认排序规则。

3.设置和更改数据库排序规则

创建新数据库时,可以使用下列内容之一指定排序规则:

CREATE DATABASE 语句的 COLLATE 子句。

SQL Server Management Studio.

SQL 管理对象 (SMO) 中的 Database.Collation 属性。

如果未指定排序规则,则使用服务器排序规则。

可以使用 ALTER DATABASE 语句的 COLLATE 子句来更改在用户数据库中创建的任何新对象的排序规则。使用此语句不能更改任何现有用户定义的表中列的排序规则。使用 ALTER TABLE 的 COLLATE 子句可以更改这些列的排序规则。

更改数据库排序规则时,需要更改下列内容:

数据库的默认排序规则,这一新的默认排序规则将应用于数据库中后续创建的所有列、用户定义的数据类型、变量和参数。根据数据库中定义的对象解析 SQL 语句中指定的对象标识符时,也使用新的默认排序规则。

将系统表中的任何 char、varchar、text、nchar、nvarchar 或 ntext 列更改为使用新的排序规则。

将存储过程和用户定义函数的所有现有 char、varchar、text、nchar、nvarchar 或 ntext 参数和标量返回值更改为使用新的排序规则。

将 char、varchar、text、nchar、nvarchar 或 ntext 系统数据类型和基于这些系统数据类型的所有用户定义的数据类型更改为使用新的默认排序规则。

SQL code :

1.将数据库的字符集修改为:

alter database dbname collate Chinese_PRC_CI_AS

2.

--1. 为数据库指定排序规则

CREATE DATABASE db COLLATE Chinese_PRC_CI_AS

GO

ALTER DATABASE db COLLATE Chinese_PRC_BIN

GO

/*====================================*/

--2. 为表中的列指定排序规则

CREATE TABLE tb(

col1 varchar(10),

col2 varchar(10) COLLATE Chinese_PRC_CI_AS)

GO

ALTER TABLE tb ADD col3 varchar(10) COLLATE Chinese_PRC_BIN

GO

ALTER TABLE tb ALTER COLUMN col2 varchar(10) COLLATE Chinese_PRC_BIN

GO

/*====================================*/

--3. 为字符变量和参数应用排序规则

DECLARE @a varchar(10),@b varchar(10)

SELECT @a='a',@b='A'

--使用排序规则 Chinese_PRC_CI_AS

SELECT CASE WHEN @a COLLATE Chinese_PRC_CI_AS = @b THEN '@a=@b' ELSE '@a<>@b' END

--结果:@a=@b

--使用排序规则 Chinese_PRC_BIN

SELECT CASE WHEN @a COLLATE Chinese_PRC_BIN = @b THEN '@a=@b' ELSE '@a<>@b' END

--结果:@a<>@b

3.

ALTER   TABLE   tb

ALTER   COLUMN   colname   nvarchar(100)   COLLATE   Chinese_PRC_CI_AS

--不区分大小写

ALTER   TABLE   tb

ALTER   COLUMN   colname   nvarchar(100)   COLLATE   Chinese_PRC_CS_AS

--区分大小写

数据库

ALTER   DATABASE   database

COLLATE   Chinese_PRC_CS_AS

--区分大小写

ALTER   DATABASE   database COLLATE Chinese_PRC_CI_AS --不区分大小写

方法一.安装SQL时选择区分大小写

或安装完以后重建mastar,选择区分大小

C:\Program   Files\Microsoft   SQL   Server\80\Tools\Binn\rebuildm.exe

方法二.sql   server   8.0以上的版本才可以,7.0及其以下不支持

alter   database   数据库   COLLATE   Chinese_PRC_CS_AS

修改排序规则,改成大小写敏感的排序规则

如果只修改一个表,用alter   table语句

如果修改一个库的默认排序规则,用alter   datebase语句

如果修改整个服务器的默认排序规则,用Rebuildm.exe重建master库

--指定排序规则就可以了

--示例

select   replace('AbacB'   collate   Chinese_PRC_CS_AS_WS,'B','test')

--如果你是要求表支持,则可以建表时指定排序规则,这样replace就不用写排序规则了

--示例

create   table   tb(a   varchar(20)   collate   Chinese_PRC_CS_AS_WS)

insert   tb   values('Abac')

select   replace(a,'a','test')   from   tb

drop   table   tb

指定排序规则即可

Windows   排序规则名称

在   COLLATE   子句中指定   Windows   排序规则名称。Windows   排序规则名称由排序规则指示器和比较风格构成。

语法

::   =

CollationDesignator_

::=

CaseSensitivity_AccentSensitivity

[_KanatypeSensitive   [_WidthSensitive   ]   ]

¦   _BIN

参数

CollationDesignator

指定   Windows   排序规则使用的基本排序规则。基本排序规则包括:

当指定按字典排序时应用其排序规则的字母表或语言

用于存储非   Unicode   字符数据的代码页。

例如   Latin1_General   或法文,两者都使用代码页   1252,或土耳其文,它使用代码页   1254。

CaseSensitivity

CI   指定不区分大小写,CS   指定区分大小写。

AccentSensitivity

AI   指定不区分重音,AS   指定区分重音。

KanatypeSensitive

Omitted   指定不区分大小写,KS   指定区分假名类型。

WidthSensitivity

Omitted   指定不区分大小写,WS   指定区分大小写。

BIN

指定使用二进制排序次序。

如果你只是目前查询区分,那么还是不要这样改,免得又反悔,如此查询:

select   *   from   a

/*

a_nam             a_add

----------   ----------

1                     aa

1                     bb

2                     cc

2                     vv

2                     kk

3                     dd

3                     ee

4                     dd

5                     ee

6                     yy

6                     yy

(11   row(s)   affected)

*/

现在我们查询a_add   =   'aa'的,'Aa'等等不行!

Example   1:

select   *   from   a

where   a_add   collate   Chinese_PRC_CS_AS_WS   =   'aa'

/*

a_nam             a_add

----------   ----------

1                     aa

(1   row(s)   affected)

*/

Example   2:

select   *   from   a

where   a_add   collate   Chinese_PRC_CS_AS_WS   =   'Aa'

/*

a_nam             a_add

----------   ----------

(0   row(s)   affected)

*/

方法三.上面的记不住,那么就用最笨的方法,转化为ascii

select   *   from   a

where

ascii(substring(a_add,1,1))   =   ascii(substring('Aa',1,1))

and

ascii(substring(a_add,2,1))   =   ascii(substring('Aa',2,1))

/*

a_nam             a_add

----------   ----------

(0   row(s)   affected)

*/

方法三:任何版本都可以

select   *   from   a

where   cast(a_add   as   varbinary(10))=   cast('aa'   as   varbinary(10))

如若满意,请点击右侧【采纳答案】,如若还有问题,请点击【追问】

希望我的回答对您有所帮助,望采纳!

~ O(∩_∩)O~

mysql 修改数据库排序规则_如何修改数据库的服务器排序规则相关推荐

  1. 数据库创建函数_达梦数据库创建UUID函数

    数据库创建函数_达梦数据库创建UUID函数 接触达梦数据库有一段时间了,整理了一些资料,今天分享一下达梦数据UUID自定义函数 UUID函数定义 很多数据库都有提供UUID函数,可是接触达梦数据库后, ...

  2. mysql数据库编码设置_如何修改mysql数据库编码

    在建网站时,有时需要将一个数据库里的数据导入到另一个数据库里,但往往会出现二个数据库的编码不同,造成网页乱码.解决方法就是修改数据库编码. 下面介绍一下如何修改MYSQL数据库编码的方法. 方法/步骤 ...

  3. 如何修改mysql数据库的字符集_如何修改mysql字符集

    .安装完的MySQL的默认字符集为 latin1 ,为了要将其字符集改为用户所需要的(比如utf8),就必须改其相关的配置文件:由于linux下MySQL的默认安装目录分布在不同的文件下:不像wind ...

  4. mysql killed进程不结束_优秀的数据库产品——MySQL 云数据库服务

    作为一种低成本,高性能,高可靠性和开放源代码的数据库产品,MySQL已在Internet公司中广泛使用. 例如,淘宝有数千个MySQL服务器. 尽管NoSQL在过去两年中发展迅速,新产品层出不穷,但N ...

  5. MySQL数据库课程设计_什么是数据库?如何学习数据库?

    工业自动化领域,大家经常接触到上位机软件,比如我们常用的WinCC,IFix,FactoryTalk View,WiSCADA等,都会牵扯到历史数据的存储,用于历史趋势,历史报警,报表的显示,很多公司 ...

  6. 【MySQL系列】数据库基础学习_简单认识数据库

    「前言」文章内容大致是数据库基础,以及数据库的基本知识. 「归属专栏」MySQL 「主页链接」个人主页 「笔者」枫叶先生(fy) 「枫叶先生有点文青病」「句子分享」 我见青山多妩媚,料青山.见我应如是 ...

  7. mysql被格式化恢复数据_三种常见数据库文件恢复方法介绍

    数据库可以说是一个数据仓库,因此在数据安全方面,每个数据库从备份到恢复,都有自己的一套方法流程.今天我们就从常见的MySQL, SQL以及Oracle三种数据库,来讲讲数据库恢复方法. 首先,最简单的 ...

  8. mysql数据库统计人数_统计人数 数据库

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...

  9. mysql异地灾备架构_最佳实践 数据库异地灾备

    方案概述 根据企业所在行业.合规要求.数据规模.RPO/RTO要求的不同,数据库灾备目的和要求各不相同,投入成本也是不同的.阿里云数据库灾备解决方案提供实时数据备份能力,满足企业备份多样化选择.通过数 ...

最新文章

  1. 张一鸣的微博世界-产品篇二
  2. 英雄联盟手游超燃测试服务器维护,《英雄联盟手游》超燃测试放号开启,轻松教你获得测试资格...
  3. Py之seaborn:数据可视化seaborn库(二)的组合图可视化之密度图/核密度图分布可视化、箱型图/散点图、小提琴图/散点图组合可视化的简介、使用方法之最强攻略(建议收藏)
  4. 汽车之家android平板,【精】中控面板无损无缝安装安卓平板车载电脑
  5. OpenGL Tessellation and Geometry Shaders镶嵌和几何着色器的实例
  6. python中闭包不是立刻执行_一道神奇的Python面试题,你会吗?
  7. php 垂直搜死哦,垂直搜索(Vertical Search)的详细介绍
  8. Quartz.NET常用方法 01
  9. OpenShift 4 - 用内置的Prometheus监控应用
  10. postgresql学习笔记一之安装
  11. c语言怎么删掉一个空格,新人提问:如何将输出时每行最后一个空格删除
  12. 【Expression 序列化】WCF的简单使用及其Expression Lambada的序列化问题初步解决方案(三)...
  13. Flutter之Widget 更新机制updateChild原理浅析
  14. python相关函数_Python 函数相关概念
  15. 需求管理搞不定?这4招帮你解决项目需求管理
  16. 撰写美国作业使用APA与MLA格式的区别是什么?
  17. qcon_从QCon伦敦2009中学到的主要知识点和教训
  18. python读取tsv文件_Python读取tsv文件和evalu
  19. 2k 幻14_华硕幻14(2060 2k版)值得入手吗?
  20. 基于物理的渲染PBR(二):挑战手写pbr和IBL环境光部分的见解

热门文章

  1. tar.xz格式的文件解压方法
  2. 关于c语言报错error C4996: ‘scanf‘: This function or variable may be unsafe.
  3. 基于Java毕业设计新生报到管理系统源码+系统+mysql+lw文档+部署软件
  4. 华为云会议初体验【华为云至简致远】
  5. 一文搞懂CPU如何控制I/O设备
  6. 领夹式麦克风常规使用方法及方案说明
  7. 文心一格,百度AI作画产品
  8. WireShark_数据统计表
  9. 安装稳定版python 3.9.2
  10. r语言员工离职_r语言、 weka代写从决策树模型看员工为什么离职?