Corsi on-line

Ricerche case sensitive con MySQL

E’ noto che di default il DBMS MySQL è case insensitive, non effettua infatti alcuna distinzione tra minuscole e maiuscole; non si può dire che questa affermazione sia errata, ma sarebbe ancora meglio spiegare che MySQL è case insensitive per i set di caratteri predefiniti latin1 e latin1_swedish_ci nella comparazione di stringhe non binarie. Quindi, come fare in modo che le ricerche in MySQL siano case sensitive?

La risposta è più semplice di quanto non si creda, basta infatti effettuare il casting (conversione di tipo), da un dato non binario ad uno binario, come nell’esempio proposto di seguito:

SELECT campo1, campo2.. FROM tbl WHERE BINARY(campo3)='Eliox';

A ben vedere, quella effettuata non è una vera e propria operazione di casting, il dato passato alla funzione BINARY rimarrà infatti del suo tipo originario, ma in questo modo sarà convertito per poter essere utilizzato all’interno dell’interrogazione corrente.

Post correlati
I più letti del mese
Tematiche