C'est une question de défi intéressant car il peut y avoir plusieurs façons de résoudre ce problème :)MySQL transformer champ unique sensible à la casse dans le champ de la casse unique,
J'ai une colonne ID est unique, mais sensible à la casse , ex:
----- ID ------
0018000001K6dkh -> record 1
0018000001K6dkH -> record 2 (different from record 1)
comme MySQL est sensible à la casse en UTF8, il envisage les deux valeurs d'ID comme identiques:
SELECT COUNT(*) FROM table WHERE id='0018000001K6dkh' //returns 2 instead of 1
SELECT COUNT(*) FROM table WHERE id='0018000001K6dkH' //returns 2 instead of 1
je dois construire une fonction MySQL que je peux ap nappe à cette colonne pour transformer tous les ID dans un insensible à la casse et uniques ID, ex:
function('0018000001K6dkh') = something
function('0018000001K6dkH') = something different
function('0018000000ttzlB') = something even different
function('0018000000tTzlB') = something even more different
Note: Je ne veux pas utiliser les collations, parce que je dois changer tout les WHERE
s et JOIN
s dans mon application (Laravel PHP). Je veux changer les ID de manière permanente.
Je suis assez certain que vous pouvez changer le classement d'un champ. – Uueerdo
lol tu as raison, ça marche. Voulez-vous répondre à la question? –