㈠ 如何查看sql server是否区分大小写
sql
server2008是不区分大小写的。
但是,一般的操作,如select
,
from
,where
等
最好写成大写,毕竟它的系统内部都是用的大写。
㈡ SQL语句区分大小写吗
SQL大小写并不敏感,但是如果是引起来的字符,则是区分大小写的,
示例如下,
1、创建测试表,create table test_uporlow(id number, value varchar2(20));
㈢ 如何查看sql server是否区分大小写
看你设置的字符集:collate
有些字符集区分大小写,有些不区分大小写
语法:
alter database DBName collate Chinese_PRC_CI_AS
㈣ 如何在SQL中实现区分大小写的查询
在创建数据库时,指定要区分大小写,或者后期再做更改也可以alter database dbname collate chinese_prc_cs_as
在创建表时,指定要区分大小写,或者后期再做更改也可以 alter table tbname collate chinese_prc_cs_as
如果只是想使用一次,不想修改整个表或整个数据库。
3.1可以在使用时,将查询或使用到的字段,转成二进制形式进行比较就可以了(大小写的二进制形式肯定是不一样的~)
3.2可以在查询或使用时,指名使用 简体中文做为数据库的查询规则。 指定SQL server的排序规则 Chinese_PRC指的是中国大陆地区,如果是台湾地区则为Chinese_Taiwan CI指定不区分大小写,如果要在查询时区分输入的大小写则改为CS AS指定区分重音,同样如果不需要区分重音,则改为AI COLLATE可以针对整个数据库更改排序规则,也可以单独修改某一个表或者某一个字段的排序规则,指定排序规则很有用,比如用户管理表,需要验证输入的用户名和密码的正确性,一般是要区分大小写的。 使用collate: select * from 表 where 字段='King' collate chinese_prc_cs_as 或者 转换为varbinary select * from 表 where convert(varbinary(1000),字段)=convert(varbinary(1000),'King')
㈤ SQLServer数据库区分大小写的几种方法
第一种:
ALTERTABLEtb--(指定某表的某列)
ALTERCOLUMNcolnamenvarchar(100)COLLATEChinese_PRC_CI_AS--不区分大小写
ALTERTABLEtb--(指定某表的某列)
ALTERCOLUMNcolnamenvarchar(100)COLLATEChinese_PRC_CS_AS--区分大小写
alterdatabase数据库COLLATEChinese_PRC_CS_AS--(指定整个数据库)
第二种:
--创建如下用户自定义函数(UDF)
CREATEFUNCTIONStrComp(@Str1VARCHAR(50),@Str2VARCHAR(50))
--ALTERFUNCTIONStrComp(@Str1VARCHAR(50),@Str2VARCHAR(50))
RETURNSINTEGER
AS
BEGIN
DECLARE@iINTEGER
--DECLARE@Str1VARCHAR(50)
--DECLARE@Str2VARCHAR(50)
DECLARE@yINT
--SET@Str1='a'
--SET@Str2='A'
SET@i=0
--SELECTASCII(SUBSTRING(@Str1,@i+1,1))
SET@y=1
DECLARE@iLenINT
SET@iLen=LEN(LTRIM(RTRIM(@Str1)))
IFLEN(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*
fromTable1
Wheredbo.StrComp(Field1,'aAbB')=1
第三种:
SQL Server 数据库中的文本信息可以用大写字母、小写字母或二者的组合进行存储。例如,姓氏可以"SMITH"、"Smith"或"smith"等形式出现。
数据库是否区分大小写取决于 SQL Server 的安装方式。如果数据库区分大小写,当搜索文本数据时,必须用正确的大小写字母组合构造搜索条件。例如,如果搜索名字"Smith",则不能使用搜索条件"=smith"或"=SMITH"。
另外,如果服务器被安装成区分大小写,则必须用正确的大小写字母组合提供数据库、所有者、表和列的名称。如果提供的名称大小写不匹配,则 SQL Server 返回错误,报告"无效的对象名"。
当使用关系图窗格和网格窗格创建查询时,查询设计器始终正确地反映出服务器是否区分大小写。但是,如果在 SQL 窗格中输入查询,则必须注意使名称与服务器解释名称的方式相匹配。
如果服务器是用不区分大小写的选项安装的,则
提示 若要确定服务器是否区分大小写,请执行存储过程 sp_server_info,然后检查第 18 行的内容。如果服务器是用不区分大小写的设置安装的,则 sort_order 选项将设置为"不区分大小写"。可以从查询分析器运行存储过程。
第四种:
select*fromserverswhereconvert(varbinary,name)=convert(varbinary,N'RoCKEY')
第五种:
ascii('a')再配合Substring()一起用
㈥ SQL不是不区分大小写吗
sql关键字不区分大小写。
比如,select
或者SELECT都是可以的,甚至写成
sElEct在大多数数据库中都允许。
自定义对象则和数据库本身设置有关。
比如,表名和字段名等。sqlserver默认配置下是不区分大小写的,oracle在默认配置下是区分大小写的。不过都可以通过配置选项来配置。
数据库自带函数则和数据库有关。
比如日期函数,cast,convert函数等。在sqlserver中,是不区分大小写的,但是informax数据中,部分函数区分大小写。这个要看具体数据库了。