Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    77

    mysql sensibile a caratteri maiuscoli/minuscoli?

    Ciao!
    Mysql è sensibile ai caratteri maiuscoli o minuscoli?
    Ad esempio se in una tabella ho un campo con ABC e un altro con AbC o abc..lui li vede uguali?
    Se faccio un select con campo = ABC, mi restiuisce il primo o tutti e tre?

    grazie

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    mysql di default è case insensitive a meno che non utilizzi una collation che invece sia case sensitive.

    Ti posto un esempio

    codice:
    create table prova (
            colonna1 varchar(5) character set latin1 collate latin1_general_ci,
            colonna2 varchar(5) character set latin1 collate latin1_general_cs
    ) 
    
    insert into prova values ('abc','abc'),('AbC','AbC'),('ABC','ABC')
    
    
    select * from prova where colonna1 = 'abc';
    
    select * from prova where colonna2 = 'abc';
    La prima select restituirà tutti e tre i record in quanto la ricerca avviene sul campo con la collation case insensitive (ci). La seconda estrarrà solo il record con l'esatta corrispondenza.

    Se vuoi forzare il confronto binario pur non essendo la collation cs fai invece così

    select * from prova where binary(colonna1) = 'abc';

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.