`
gogoyoyo
  • 浏览: 36767 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

改变SQL SERVER默认不区分大小写的设置

阅读更多
SQL SERVER 2000/2005中默认不区分大小写,可以通过collate Chinese_PRC_CS_AS来要求区分大小写,可以通过collate Chinese_PRC_CI_AS恢复默认的不区分大小写*/

默认情况下,SQL Server不区分大小写,如果数据表TEST的TNAME列中有数据“abcd”和“Abcd”, 如果使用查询语句:select * from test  where  tname  like 'a%',则查询的结果会把上面的两条记录都查询出来,这一点上和Oracle有区别.



可以通过设置排序规使其区分大小写,可以分别在创建数据库、修改数据库、创建表的字符型列(char\varchar\nchar

\nvarchar等)时指定排序规则来实现。如

create database test  COLLATE  Chinese_PRC_CS_AS   --这样创建的数据库中区分大小写

alter database test  COLLATE  Chinese_PRC_CS_AS   --修改后的数据库中区分大小写

Create table test(tid int primary key,tname varchar(20) collate chines_prc_cs_as) --这样创建的tname列在使用SELECT 语句时就可以区分大小写了。

分享到:
评论

相关推荐

    sqlserver 区分大小写的相关设置

    在 SQL Server 中,默认情况下,数据库是区分大小写的,但是可以通过设置 COLLATE 来控制大小写的敏感度。COLLATE 子句用于指定数据库或表中的排序规则和大小写敏感度。 在 SQL Server 中,COLLATE 子句可以应用于...

    SQL2008对表名及字段区分大小写

    - **不区分大小写**:同样的,也可以设置为不区分大小写: ```sql ALTER DATABASE 数据库名 COLLATE Chinese_PRC_CI_AS; ``` 3. **Windows 排序规则名称的组成** - **语法结构**: - `...

    数据库区分大小写的设置

    SQL Server默认情况下对标识符(例如表名、列名等)是不区分大小写的。然而,在某些场景下,用户可能希望启用大小写敏感性。这可以通过定义一个特定的排序规则(Collation)来实现。 例如,在SQL Server中创建或...

    SQL查询区别大小写

    SQL Server默认情况下对标识符(如表名、列名等)是大小写不敏感的,但对于字符串值(如WHERE子句中的搜索条件)则是大小写敏感的。这种行为是由数据库的排序规则(Collation)所决定的。不同的排序规则会导致不同的...

    如何:让Oracle表及字段显示为区分大小写

    与Oracle相比,SQL Server 默认支持区分大小写的标识符。这意味着在SQL Server中创建表时,无需额外操作即可保留标识符的原始大小写状态。SQL Server使用方括号 (`[]`) 来指定标识符应保持原始大小写。这种机制与...

    SQL Server 2008中SQL查询语句字段值不区分大小写的问题解决

    默认情况下,SQL Server可能使用一种不区分大小写的排序规则,导致在比较字符串时不考虑字符的大小写差异。 **二、解决办法** 1. **数据库级设置排序规则** 可以通过修改数据库的排序规则来全局改变所有表和列的...

    SQL Server字符串比较时区别大小写方法

    在SQL Server中默认对大小写是不敏感的,例如userName=""jesse""和userName=""JESSE""结果是一样的。在验证密码的时候可能需要对字符串大小写敏感,需要做一些处理,介绍两种方法:  法Ⅰ:转换成二进制再比较,...

    使MySQL查询区分大小写.doc

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

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

    然而,Mac OS X是一个特例,尽管基于Unix,但默认的文件系统HFS+对大小写不敏感。MySQL提供了一个系统变量`lower_case_table_names`,允许用户根据需求调整表名和数据库名的大小写敏感性。 综上所述,理解并适应...

    SQLServer与Oracle语法差异汇总.docx

    Oracle默认不区分大小写,但可以通过设置使数据库区分大小写。相比之下,SQL Server通常不区分大小写,但在某些特定情况下(如表名和列名)可能会区分大小写。 至于`SELECT`语句,Oracle允许将结果集作为临时表使用...

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

    请注意,尽管设置`lower_case_table_names=1`可以使得数据库在操作时不区分大小写,但并不意味着在SQL查询中可以随意使用大小写。在执行查询时,仍需要确保遵循表名和数据库名的原始大小写格式,以避免潜在的问题。...

    SQL Server中获取多音字拼音首字母.pdf

    其中 Chinese_PRC 指中国大陆地区简体字,Chinese_Taiwan 指中国台湾繁体字,Stroke 是指按照笔画顺序进行排序,默认是按拼音排序,BIN 指定使用向后兼容的二进制排序顺序,CI 表示不区分大小写,AS 表示区分重音。...

    SQL_server_2005排序规则的修改.doc

    在 SQL Server 2005 中,默认的排序规则是区分大小写的,这意味着数据库会根据字符串的大小写进行区分。这可能会导致一些不必要的错误和问题,例如,在数据库中存储的名称为“Smith”的数据可能无法被正确地查询出来...

    oracle与SQL server的语法差异总结

    默认情况下,Oracle对字符串不区分大小写,但可以通过设置数据库参数使其区分大小写。SQL Server则默认对字符区分大小写。 8. **序列**: - Oracle使用序列对象(如 `CREATE SEQUENCE seq_name`) 来生成自动递增...

    SqlServer数据库中文乱码问题解决方法

    这将创建一个名为`paas`的新数据库,使用中文简体的不区分大小写、不区分重音、不区分宽度的排序规则。 如果你的数据库已经包含数据,可以尝试更改数据库的排序规则: 1. 右键点击数据库,选择“属性”。 2. 进入...

    PostgreSQL_与_MS_SQLServer比较

    - **MS SQL Server** 则默认不区分大小写。 #### 字符串操作 - **字符串连接**:MS SQL Server 使用 `+` 连接字符串,而 PostgreSQL 使用 `||`。 - **处理 NULL 字符**:两者都支持使用 `COALESCE` 或 `NULLIF` ...

    SQL Server 2008乱码问题

    - "CI" 代表Case Insensitive(不区分大小写),这意味着在比较字符串时,大小写不被考虑。 - "_AS" 代表ASCII Sort Order(ASCII排序顺序),它规定了在遇到无法映射到Unicode的非ASCII字符时的处理方式。 当安装...

    排序函数(sqlserver)

    这里的`Chinese_PRC_CI_AI`是一个排序规则,表示简体中文,不区分大小写,不区分重音。不同的排序规则可以影响到中文字符、数字以及标点符号的排序顺序。 在处理全角和半角字符时,SQL Server同样有相应的机制。...

    Oracle与SQLServer的SQL语法差异总结1

    Oracle 对字符区分大小写,默认对字符不区分大小写,也可以修改数据库配置支持区分大小写,而 SQL Server 不区分大小写。 序列 Oracle 中有序列 sequence 对象,无自动增长列,而 SQL Server 中无序列对象,表中有...

Global site tag (gtag.js) - Google Analytics