Rumah  >  Artikel  >  pangkalan data  >  sqlserver,oracle ,Mysql数据库 关于区分大小写查询的问题

sqlserver,oracle ,Mysql数据库 关于区分大小写查询的问题

PHP中文网
PHP中文网asal
2017-03-31 16:02:311623semak imbas

SQLSERVER

在sqlserver 中 查询默认是不区分大小写  即 where a='ABC'  与where a=‘abc’是一样的

但是我们可以通过方法 设置是否区分大小写

方法一:

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  (指定整个数据库)

方法二:

select * from servers where convert(varbinary, name)=convert(varbinary, N'RoCKEY')

ORACLE

Oracle10g 中查询默认是区分大小写的 (使用sql语句查询当前oracle版本:select * from v$version)

这里也可以设置不区分大小写,步骤如下

ALTER SESSION SET NLS_COMP=ANSI;
ALTER SESSION SET NLS_SORT=binary_ci;

效果图:

如果是使用like的话 要用正则区分

效果图:

MYSQL

mysql的 like  默认是不区分大小写的   like binary 区分大小写

 以上就是sqlserver,oracle ,Mysql数据库 关于区分大小写查询的问题的内容,更多相关内容请关注PHP中文网(www.php.cn)!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn