Leçon 3 / 8 — Chapitre 7: Index approfondi
Index UNIQUE
CREATE UNIQUE INDEX combine les deux bénéfices d'un index classique et d'une contrainte UNIQUE : il accélère la recherche et interdit les doublons — en une seule instruction. La plupart des moteurs SQL implémentent d'ailleurs une contrainte UNIQUE en interne comme un index unique.
CREATE UNIQUE INDEX idx_email_unique ON abonnes(email);
Après cette instruction, toute tentative d'insérer une seconde ligne avec le même email (non-NULL) échoue, exactement comme avec la contrainte UNIQUE vue au chapitre précédent — avec, en prime, une recherche par email nettement plus rapide.
Un index classique, sans UNIQUE, n'apporte que le premier bénéfice : il accélère la recherche, mais n'empêche aucun doublon.
À retenir :
CREATE UNIQUE INDEXaccélère la recherche et empêche les doublons non-NULL, comme une contrainte UNIQUE.CREATE INDEX(sans UNIQUE) n'accélère que la recherche, sans imposer aucune règle d'unicité.- Une contrainte
UNIQUEdéclarée dans unCREATE TABLEcrée d'ailleurs, en coulisses, un index unique équivalent dans la plupart des moteurs.
À vous de jouer : sur une colonne déjà déclarée UNIQUE dans un CREATE TABLE, un CREATE UNIQUE INDEX supplémentaire est-il encore utile ? Justifiez.
Continuez ce module
Débloquez les leçons restantes ainsi que la certification finale.
2 500 XOF / 3,81 € / 4,15 $
Débloquez les 80 leçons restantes de ce module
Votre paiement est vérifié avant l'activation de l'accès