BINARY() de MySQL vraiment lent... - PHP - Programmation
Marsh Posté le 27-11-2003 à 20:22:39
Fais une vérification sur les données extraites. (ie. pas dans la requête)
Tu ne devrais pas avoir beaucoup d'enregistrements retournés, il suffit de prendre le bon.
Marsh Posté le 27-11-2003 à 21:01:43
Je reformule : tu sélectionnes sans tenir compte des accents, puis tu testes les résultats obtenus pour ne garder que le bon. (s'il existe)
C'est plus clair ?
Marsh Posté le 27-11-2003 à 21:23:31
ahhhh... je vois, merci!
Marsh Posté le 28-11-2003 à 01:04:14
euh en tous cas le coup de changer le varchar en blob c clair que ct un mauvais plan
Marsh Posté le 28-11-2003 à 09:43:27
Tu peux spécifier les règles de comparaison au niveau :
Du serveur
De la base
De la table
Du champs
De la connexion
De la requête
http://www.mysql.com/doc/en/Charset-MySQL.html
Par exemple pour un champs :
CREATE TABLE Table1 |
Dans une requête de ce genre :
select * from Table1 where column1 = 'teubé'
La règle précise que la 'COLLATION' du champs est prioritaire par rapport au litéral : http://www.mysql.com/doc/en/Charse [...] ricky.html
Si tu a la main su le serveur, tu peux changer la 'COLLATION' au niveau du serveur : http://www.mysql.com/doc/en/Charset-server.html
Le BLOD, c'est une mauvaise idée, très mauvaise. Ca va ralentir ton truc sans règler le problème...
Marsh Posté le 27-11-2003 à 17:33:10
Bonjour!
J'ai une colonne indexée, sur la quelle je dois faire une requête du genre:
Mais c'est leeeeeeeeent. mot_mot était en VARCHAR(30), on m'a dit de convertir cette colonne en BLOB (BINARY) ca devrait accélérer. Malheureusement, pas du tout.
Z'avez une idée? Le but d'utiliser BINARY est que MySQL fasse la différence entre 'é' et 'ê', 'e' etc...
Merci!