mysql大小寫(xiě)敏感的問(wèn)題

字號(hào):


    一、1 create table name(name varchar(10));
    對(duì)這個(gè)表,缺省情況下,下面兩個(gè)查詢(xún)的結(jié)果是一樣的:
    代碼如下:
    select * from table name where name='clip';
    select * from table name where name='clip';
    mysql默認(rèn)查詢(xún)是不區(qū)分大小寫(xiě)的,如果需要區(qū)分他,必須在建表的時(shí)候,binary標(biāo)示敏感的屬性.
    代碼如下:
    create table name(
    name varchar(10) binary
    );
    2 在sql語(yǔ)句中實(shí)現(xiàn) select * from table name where binary name='clip';
    3 設(shè)置字符集:
    utf8_general_ci --不區(qū)分大小寫(xiě)
    utf8_bin--區(qū)分大小寫(xiě)
    二、 mysql在windows下是不區(qū)分大小寫(xiě)的,將script文件導(dǎo)入mysql后表名也會(huì)自動(dòng)轉(zhuǎn)化為小寫(xiě),結(jié)果再 想要將數(shù)據(jù)庫(kù)導(dǎo)出放到linux服務(wù)器中使用時(shí)就出錯(cuò)了。因?yàn)樵趌inux下表名區(qū)分大小寫(xiě)而找不到表,查了很多都是說(shuō)在linux下更改mysql的設(shè)置使其也不區(qū)分大小寫(xiě),但是有沒(méi)有辦法反過(guò)來(lái)讓windows 下大小寫(xiě)敏感呢。其實(shí)方法是一樣的,相應(yīng)的更改windows中mysql的設(shè)置就行了。
    具體操作:
    在mysql的配置文件my.ini中增加一行:
    lower_case_table_names = 0
    其中 0:區(qū)分大小寫(xiě),1:不區(qū)分大小寫(xiě)
    mysql在linux下數(shù)據(jù)庫(kù)名、表名、列名、別名大小寫(xiě)規(guī)則是這樣的:
    1、數(shù)據(jù)庫(kù)名與表名是嚴(yán)格區(qū)分大小寫(xiě)的;
    2、表的別名是嚴(yán)格區(qū)分大小寫(xiě)的;
    3、列名與列的別名在所有的情況下均是忽略大小寫(xiě)的;
    4、變量名也是嚴(yán)格區(qū)分大小寫(xiě)的; mysql在windows下都不區(qū)分大小寫(xiě)
    以上就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。