Bonjour,
J'ai une base de données qui contient pour l'instant environ 150 000 entrées qui sont en fait des numéros de téléphone avec un certain nombres de champs liés à ces numéros de téléphone.
numero_telephone | champ1 | champ2 | ... => Tous en VARCHAR
Quand je veux alimenter la base de données avec des nouveaux numéros (variable $numero_a_verifier) de téléphone, je dois bien sûr vérifier que ces numéros n'existent pas déjà et c'est là que les problèmes commencent...
Je fais donc un SELECT num_telephone where num_telephone=$numero_a_verifier
Ca fonctionne mais c'est terriblement lent et comme j'alimente la base avec des paquets de plus de 100 000 numéros, SQL doit aller vérifier les 150 000 existants et ça prend un temps dingue (plusieurs heures!)
Je pense donc que j'ai mal formatté ma base. Je dois probablement indexer la base, j'ai simplement cliqué sur l'icone index de la colonne numero_telephone mais c'est à peine un peu plus rapide.
Est-ce que quelqu'un peut m'expliquer comment je peux optimiser ce genre de requêtes ?
Merci !
Laurent
Configuration: Windows XP
Internet Explorer 6.0