`
evget
  • 浏览: 144670 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
文章分类
社区版块
存档分类

mssql中大小写的区分

阅读更多
文章关键字:|mssql|大小写|区分|服务器|排序|规则|参数|

1.--区分大小写

select * from a where a=’AbCdE’ collate Chinese_PRC_CS_AI--区分大小写

select * from a where a=’abCdE’ collate Chinese_PRC_CI_AI--不区分大小写

2.如果想让服务器上所有的存储表都区分大小写就需要在安装服务器时设置服务器的排序规则

或者 运行

alter database testgrass collate Chinese_PRC_CS_AI

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

SQL Server\\80\\Tools\\Binn\\rebuildm.exe

4.或者图解

1).先打开oblog数据库的oblog_user表,右键点击,选设计表

2).找到username字段

3).然后找到下面的排序规则

4).在弹出的对话框中选择区分大小写

参考:

我们在create table时经常会碰到这样的语句,例如:

password nvarchar(10)collate chinese_prc_ci_as null,

那它到底是什么意思呢?不妨看看下面:

首先,collate是一个子句,可应用于数据库定义或列定义以定义排序规则,或应用于字符串表达式以应用排序规则投影。语法是:

collate collation_name

collation_name ::={windows_collation_name}|{sql_collation_name}

参数collate_name是应用于表达式、列定义或数据库定义的排序规则的名称。collation_name 可以只是指定的 Windows_collation_name 或SQL_collation_name。

Windows_collation_name 是 Windows 排序规则的排序规则名称。参见 Windows 排序规则名称。

SQL_collation_name 是 SQL 排序规则的排序规则名称。参见 SQL 排序规则名称。

下面简单介绍一下排序规则:

什么叫排序规则呢?MS是这样描述的:\"在 Microsoft SQL Server 2000 中,字符串的物理存储由排序规则控制。排序规则指定表示每个字符的位模式以及存储和比较字符所使用的规则。\"

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

select * from ::fn_helpcollations()

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

Chinese_PRC_CS_AI_WS

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

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

_BIN 二进制排序

_CI(CS) 是否区分大小写,CI不区分,CS区分

_AI(AS) 是否区分重音,AI不区分,AS区分

_KI(KS) 是否区分假名类型,KI不区分,KS区分  [Page]

_WI(WS) 是否区分宽度 WI不区分,WS区分

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

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

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

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

原文地址:http://www.evget.com/zh-CN/Info/ReadInfo.aspx?id=9219
分享到:
评论

相关推荐

    有关MySQL8.0大小写敏感的问题

    然而,在8.0版本中,MySQL对此进行了重大改动:该参数现在只能在服务器初始化时进行配置,并且默认值在不同的操作系统上有区别——Windows下默认为1(大小写不敏感),而在Linux下则保持不变,仍为0(大小写敏感)。...

    LINUX系统下mysql的大小写区分问题.docx

    在Windows系统中,MySQL通常不区分数据库名、表名和列名的大小写,但在Linux环境下,情况则有所不同。 首先,当在Linux上安装MySQL后,其默认配置是区分表名的大小写,但不区分列名的大小写。这意味着在创建数据库...

    mysql大小写敏感

    MySQL 在 Linux 下默认情况下是严格区分表名和数据库名的大小写,而在 Windows 下则不区分大小写。 在 Linux 下,MySQL 的默认设置是区分表名的大小写,不区分列名的大小写。可以通过添加 lower_case_table_names=...

    数据库区分大小写的设置

    通过对SQL Server和MySQL中区分大小写的设置进行深入了解,我们可以更好地根据实际需求调整数据库的行为。无论是创建表时指定字段属性、查询时动态控制还是更改现有表的设置,这些方法都为我们提供了灵活的手段来...

    使MySQL查询区分大小写.doc

    在MySQL中,查询默认情况下通常是不区分大小写的,但如果你想让你的查询对大小写敏感,有几种方法可以实现。以下是一些关键知识点和步骤来帮助你在MySQL中进行区分大小写的查询。 1. **设置列的Collation** - **...

    MySQL的SQL语句大小写不敏感问题解决方案

    此外,在 mysql table editor 中也可以直接勾选 BINARY 项,以便区分大小写。 MySQL 的 SQL 语句大小写不敏感问题是一个需要注意的问题,通过设置表名的大小写规则和字段的 BINARY 属性,可以解决这个问题。

    MySQL中玩转字母大小写问题

    ### MySQL中字母大小写问题详解 #### 环境配置 在MySQL中处理字母大小写问题时,首先要明确运行MySQL服务器的操作系统环境。本案例中使用的操作系统为Linux 2.6.32-431.el6.x86_64版本,MySQL版本为5.6.24-log。...

    MySQL修改配置 区分大小写

    当`lower_case_table_names`设置为0时,MySQL将对这些对象的名字进行完全区分大小写的比较,这意味着创建时的大小写必须在后续的查询中严格保持一致。而如果设置为1,则表示MySQL会将所有名称转换为小写,从而在比较...

    MySql下实现查询表名不区分大小写

    在Linux系统中,默认情况下,MySQL是严格区分大小写的,这与Windows环境下的行为形成鲜明对比,后者默认不区分大小写。本文将深入探讨如何在Linux下通过修改MySQL配置,使查询操作中表名的大小写变得不敏感。 ### ...

    mysql基础-不设置区分大小写

    在本文中,我们将探讨如何在Windows和Linux操作系统上设置MySQL使其不区分大小写。 首先,我们要了解`lower_case_table_names`这个配置选项。这是一个用于控制MySQL服务器如何处理表名和数据库名大小写的参数。当`...

    MySQL表名不区分大小写的设置方法

    在Windows系统中,默认情况下,MySQL不区分表名的大小写,而在Unix或者Linux系统中,MySQL则默认区分表名的大小写。这种差异可能会导致一些跨平台的程序在执行时出现找不到表的错误,尤其是在开发或迁移过程中。 当...

    MySql查询不区分大小写解决方案(两种)

    在MySQL数据库中,查询操作默认情况下是不区分大小写的,这意味着如果你在查询条件中使用了不同的大小写字母,比如"aaa"和"Aaa",它们会被视为相同,从而可能导致你期望的精确匹配失败。这对于一些特定场景,比如...

    0积分:MySql表名大小写的问题.txt

    > 在MySQL环境中,表名的大小写敏感性是一个常见的问题。由于不同的操作系统和配置设置,MySQL对表名的处理方式有所不同。例如,在Windows系统上安装MySQL时,默认情况下表名是不区分大小写的。而在Linux环境下,...

    详解MySQL查询时区分字符串中字母大小写的方法

    MySQL默认的行为是不区分字符串中的字母大小写,这可能会在某些场景下引起困扰,比如在需要严格区分大小写的数据库操作中。以下是对这一主题的详细解释。 首先,字符集是用于表示和存储文本数据的编码方式,如UTF-8...

    mysql如何设置不区分大小写

    mysql设置不区分大小写 windows下 到安装mysql的目录,修改my.ini文件 在文件最后一行加上下面一句话 lower_case_table_names=1 说明 0:区分大小写,1:不区分大小写 效果如下 [mysqld] port = 3306 basedir=F...

    PostgreSQL数据库对象名大小写敏感的解决方法

    `UPPER()`可以将字符串转换为大写,而`ILIKE`则用于不区分大小写的字符串比较。 ##### 示例查询语句 ```sql -- 使用UPPER()函数 SELECT * FROM "TUser" WHERE UPPER("Name") LIKE '%TONY%'; -- 使用ILIKE操作符 ...

    mysql表名忽略大小写配置方法详解

    在Linux系统中,默认情况下MySQL是区分大小写的,而在Windows系统中则通常是不区分大小写的。对于开发者来说,保持一致性是至关重要的,特别是在跨平台的应用中。本文将详细介绍如何在MySQL中配置表名忽略大小写,...

    mysql查出数据不区分大小写.md

    mysql查出数据不区分大小写.md

Global site tag (gtag.js) - Google Analytics