在SQLServer中区分大小写的几种方法

关于sqlserver2014主键不能区别大小写(大小写不敏感)问题的解决方法 关于sqlserver2014主键不能区别大小写问题的解决方法 sqlserver2014默认的排序规则导致对字母的大小写不敏感,在主键有着大小写不同的情况时系统区分不出来。下面我来举个例子。 我们先新建一张以id为主键的测试表 之后插入两条主键大小写不同的数据运行 结果就会报违反了 PRIMARY KEY 约束“pk_test”。不能在对象“dbo.test”中插入重复键。重复键值为 (A)... 阅读详情

今天碰到这个问题了,问了一下朋友,给出了以下几种解决方法,贴出来大家都看一下:
第一种:(蟋蟀)
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 数据库 COLLATE Chinese_PRC_CS_AS

第二种:(tree)
--创建如下用户自定义函数(UDF)

CREATE FUNCTION StrComp(@Str1 VARCHAR(50),@Str2 VARCHAR(50))
--ALTER FUNCTION StrComp(@Str1 VARCHAR(50),@Str2 VARCHAR(50))
RETURNS INTEGER
AS
BEGIN
  DECLARE @i INTEGER
  --DECLARE @Str1 VARCHAR(50)
  --DECLARE @Str2 VARCHAR(50)
  DECLARE @y INT
  --SET @Str1='a'
  --SET @Str2='A'
  SET  @i=0
  --SELECT ASCII(SUBSTRING(@Str1,@i+1,1))
  SET @y=1
  DECLARE @iLen INT
  SET @iLen = LEN(LTRIM(RTRIM(@Str1)))
  IF LEN(LTRIM(RTRIM(@Str1))) < LEN(LTRIM(RTRIM(@Str2))) --THEN
     SET @iLen = LEN(LTRIM(RTRIM(@Str2)))
  WHILE (@i < @iLen)
    BEGIN
      IF (ASCII(SUBSTRING(@Str1,@i+1,1))=ASCII(SUBSTRING(@Str2,@i+1,1))) --THEN
         SET @i = @i +1
      ELSE
         BEGIN
           SET @y=0
           BREAK
         END
      END
     RETURN @y
END

测试:
select *
from Table1
Where dbo.StrComp(Field1,'aAbB') =1

第三种:(Oliver)
SQL Server 数据库中的文本信息可以用大写字母、小写字母或二者的组合进行存储。例如,姓氏可以"SMITH"、"Smith"或"smith"等形式出现。

数据库是否区分大小写取决于 SQL Server 的安装方式。如果数据库区分大小写,当搜索文本数据时,必须用正确的大小写字母组合构造搜索条件。例如,如果搜索名字"Smith",则不能使用搜索条件"=smith"或"=SMITH"。

另外,如果服务器被安装成区分大小写,则必须用正确的大小写字母组合提供数据库、所有者、表和列的名称。如果提供的名称大小写不匹配,则 SQL Server 返回错误,报告"无效的对象名"。

当使用关系图窗格和网格窗格创建查询时,查询设计器始终正确地反映出服务器是否区分大小写。但是,如果在 SQL 窗格中输入查询,则必须注意使名称与服务器解释名称的方式相匹配。

如果服务器是用不区分大小写的选项安装的,则
提示   若要确定服务器是否区分大小写,请执行存储过程 sp_server_info,然后检查第 18 行的内容。如果服务器是用不区分大小写的设置安装的,则 sort_order 选项将设置为"不区分大小写"。可以从查询分析器运行存储过程。

第四种:(非云)
select * from servers where convert(varbinary, name)=convert(varbinary, N'RoCKEY')

第五种:()

ascii('a')再配合Substring()一起用

sqlserver 区分大小写的相关设置 立即下载

相关推荐

SQL Server 设置数据区分大小写的五种方法

SQL Server 设置数据区分大小写的五种方法: 第一种:在数据库中简单设置一下即可。 第二种: 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 数据库 COLLATE Chinese_PRC_CS_AS ............

SQLServer字段内容区分大小写

SQL Server 是不区分大小写的。这意味着可以使用大写或小写字母来编写 SQL 语句,不会影响查询的执行结果。SQLServer数据库大小写敏感字符集是Chinese_PRC_CS_AI,大小写不敏感字符集是Chinese_PRC_CI_AS。无论使用哪种大小写方式,都能正确执行查询并返回结果。

weixin_46266464的博客 7315

Python Selenium调用IE11报错全解析:从环境配置到稳定运行

在Web自动化测试领域,Selenium作为主流的跨浏览器测试框架,其核心原理是通过WebDriver协议与不同浏览器的驱动程序进行通信,实现对浏览器行为的模拟与控制。这一技术为软件测试的自动化、回归测试的效率提升提供了重要价值,广泛应用于金融、政务等对遗留系统兼容性要求高的行业场景。然而,当技术栈涉及过时的浏览器如IE11时,环境配置的复杂性显著增加,特别是Python与Selenium的组合常遭遇驱动兼容性、安全设置等挑战。本文聚焦于解决Python Selenium驱动IE11时的典型报错问题,深入剖

weixin_28834765的博客 322

SQLServer-查询区分字母大小写

偶然发现SQLServer查询条件默认不区分大小写。。。。。。 参考: (1)https://blog.youkuaiyun.com/hcwbr123/article/details/77895000 (2)https://www.cnblogs.com/zyh1994/p/6136701.html 1、sqlserver默认不区分大小写: 2、可以手动区分大小写: AND tc...

vv_wisher的博客 4348

树莓派5外接RTX显卡:从PCIe到驱动的完整踩坑指南

在ARM架构与GPU加速的交汇点,树莓派5凭借其PCIe接口为DIY爱好者打开了外接独立显卡的大门。然而,PCIe x1的带宽限制、供电差异以及NVIDIA驱动在ARM Linux上的兼容性,使得这一组合成为一场高强度的系统底层排错训练。从理解PCIe总线原理、驱动加载机制到CUDA环境配置,每一步都充满挑战。本文以工程实践视角,梳理外接RTX显卡的完整流程、常见故障与性能瓶颈,并探讨其在边缘计算、AI推理等场景下的真实价值,帮助你理性评估这一实验性方案的可行性与替代路径。

chubaisheng8627的博客 350

APK静态分析(取证角度)——理论部分

APP是指应用程序(Application),是指能够在手机、平板电脑、电脑等移动设备上运行的软件。APP可以帮助用户进行各种功能操作,如社交媒体、游戏、购物、学习、工作等。用户可以通过应用商店或者在线下载安装APP,然后在设备上使用它们。APP的种类非常丰富,能够满足用户不同的需求和兴趣。

currify的博客 3206

SQLServer数据库区分大小写的几种方法 (转)

刚刚使用sql server没有几天, 发现一个很郁闷的问题, sql server 竟然不区分大小写. 比如: select * from abc_tbl where field_1 = abc, 这个sql跟这个sql是一样的: select * from abc_tbl where field_1 = ABC, 上网search了一下, 赶紧收藏:第一种:(蟋蟀)ALTER

逐梦的专栏 4118

基于奥比中光Orbbec Astra Pro与ROS实现实时3D环境建模:orb_slam2实战指南

本文提供了一份详细的实战指南,介绍如何使用奥比中光Orbbec Astra Pro深度摄像头与ROS系统,部署并运行ORB-SLAM2算法,实现实时3D环境建模与定位。内容涵盖从驱动安装、环境配置、算法编译到摄像头标定与性能调优的全流程,旨在帮助开发者快速搭建一套高性价比的视觉SLAM系统。

weixin_29054399的博客 332

SQLServer数据库区分大小写的几种方法

 刚刚使用sql server没有几天, 发现一个很郁闷的问题, sql server 竟然不区分大小写. 比如: select * from abc_tbl where field_1 = abc, 这个sql跟这个sql是一样的: select * from abc_tbl where field_1 = ABC, 上网search了一下, 赶紧收藏:第一种:(蟋蟀)ALTER

WINCOL的专栏 1万+

CUBEMX ADC 单/多通道+DMA

本文使用的是STM3F103C8T6 Cubemx进行单/多通道DMA配置。

记录学习 1403

Apple Store 上架过包:iOS审核4.3被拒原因分析与解决修改方案

Apple Store 上架过包:iOS审核4.3被拒原因分析与解决修改方案

专业解决各种上架过包问题,专业团队专业处理 749

SQL Server不区分大小写的问题

SQL Server不区分大小写的问题 默认情况下,SQLServer不区分大小写,如果数据表TEST的TNAME列中有数据“abcd”和“Abcd”,如果使用查询语句:select*fromtestwheretnamelike'a%',则查询的结果会把上面的两条记录都查询出来,这一点上和Oracle有区别. 可以通过设置排序规使其区分大小写,...

weixin_30902675的博客 125

基于多头注意力时间卷积网络(MATCN)的虚拟电厂短期功率预测模型

​时空特征解耦​:TCN负责时间模式,注意力捕捉空间关联​动态门控机制​:自适应调整两种特征的融合比例​多尺度感知​:膨胀卷积覆盖5分钟到24小时的时间跨度​轻量化设计​:参数量比传统Transformer减少52%

hasakie的博客 322

SQL查询区分大小写方法

SQL查询区分大小写方法 在SQL SERVER 中, 默认 select * from tablewhere column1 = ' xx ' 不区分大小写 collate 选择排序 , 可用在查询区分大小写上,例: select * from tablewhere column1 collate Chinese_PRC_CS_AS= 'xx' select * from table...

我笔记 1万+

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

MSSQL 区分大小写 探究

近日项目中需要从远程服务端下载数据,但是数据有个特点是区分大小写的,所以和我们项目本身上存在冲突,因此做了个实例来研究一下mssql的大小写问题。创建表并查看加入数据的情况--1·情况:不区分大小写的情况if exists (select 1 from sysobjects where name='qufen' and type='U') drop table qufengo--创建表 并添加主键CREATE TABLE qufen( [daxiaoxie] [nchar](10) COLLATE Chin

firetaker的专栏 1375

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

sqlServer区分大小写查询

sql server默认不区分大小写查询,但是有的时候部分查询语句却需要区分大小写查询,这个时候就需要进行一些特殊处理。区分大小写主要分两种方法。 转二进制判断 select*fromtablewherecast(nameasvarbinary)=cast('LiYuanBa'asvarbinary)--短字符串 select*fromt...

钱多多的博客 1395

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

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.如果想让服务器上所有的存储表都区分大小写就需要在安装服务器时设置服务器的排序规

t134679的专栏 1621

mssql查询怎样去区分[大小写]及[全角半角]

mssql查询怎样去区分[大小写]及[全角半角]在sql2000和7.0的查询语句中--区分大小写、全半角字符的方法--查询--1.查大写字母.区分全角半角select * from 表where fd collate Chinese_PRC_CS_AS_WS like %A%  --就是在字段名后加 collate Chinese_PRC_CS_AS_WS  

点滴记事 2513

mysql mssql 安装大小写,mssql 区分大小写的详细说明

mssql 区分大小写的详细说明更新时间:2008年03月05日 21:41:49 作者:mssql区分大小写,没想到mysql也区分大小写。相关的文章稍后奉献给大家1.--区分大小写select*fromawherea='AbCdE'collateChinese_PRC_CS_AI--区分大小写select*fromawherea='abCdE'collate...

weixin_35020262的博客 200

mysql ,Oracle,dm ,sqlserver 是否区分大小写?

以下是关于MySQL、Oracle、达梦(DM)和SQL Server在环境、标识符和字符串的维度上是否区分大小写。

qq_20236937的博客 1097
上一篇: CMPP协议的客户端
下一篇: WINDOWS溢出资料
大雨仔
博客等级 码龄23年 28粉丝 159原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值