Creation d'index sous ms sql serveur ?

Résolu
Signaler
Messages postés
778
Date d'inscription
dimanche 22 décembre 2002
Statut
Membre
Dernière intervention
27 novembre 2008
-
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
-
Bonjour a tous,


Mes tables sont presque crees sous ms sql serveur 2000...
J'avais lu un article sur l'utilite de la creation d' index ...sur les tables!Mais je ne sais plus ou j'ai lu cela !
si je me souviens bien cela permet de rechercher les donnees plus rapidement ...


suis je dans le bon deja?


Bref, ma question est celle ci en fait :
j'aimerais avoir une p'tite definition de ce qu'est un index et si je suis dans le faux j'aimerais savoir a quoi cela sert ....


Je vous remercie et vous souhaite mes meilleurs voeux


Christophe

7 réponses

Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
14
nop c pas ca...
en fait un index peut etre soit unique ou non unique et cela permet de rendre les requetes plus rapides en ajoutant des contraintes( unique par exemple)
en regle general il faut faire un index sur les colonnes comprises dans les wheres de tes requetes..mais attention pas toute les requetes..il vaut mieux adapter tes requetes pour qu'elle utilise l'index...si tu met trop d'index tes insert/update seront + long...
alors que les requetes + rapides...bref fo faire des choix...

un lien utile ou il y a de tout :

http://sqlpro.developpez.com/


Arthenius

"Il n'y a pas de mauvais développeurs,...
mais uniquement de mauvais utilisateurs..."
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
14
yop tout juste :o)))
c'est "tout" ce qu'il te reste a faire...

attention a l'ordre des colonnes...dans les where et dans tes index...ils doivent etre identique pour que l'index soit correctement utilise....

si ton index est sur
COL1
COL2
COL3

et que dans ton select * from Matable WHERE COL2 = 'jddkfjf' AND COL3='jkjkj' AND COL1='kflgkfdlmf';

ben la lindex ne sera pas utiliser et ton select sera lent...

le bon select :
select * from Matable WHERE COL1 = 'jddkfjf' AND COL2='jkjkj' AND COL3='kflgkfdlmf';


Arthenius

"Il n'y a pas de mauvais développeurs,...
mais uniquement de mauvais utilisateurs..."
Messages postés
53
Date d'inscription
samedi 12 juin 2004
Statut
Membre
Dernière intervention
17 septembre 2005

salut,

d'apres moi les index permettent d'avoir plusieurs clef primaires.

car dans certains cas une seule donnée ne permet pas d'identifier une occurence.
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
14
http://sqlpro.developpez.com/cours/sqlaz/ddl/?page=partie2#L10


Arthenius

"Il n'y a pas de mauvais développeurs,...
mais uniquement de mauvais utilisateurs..."
Messages postés
778
Date d'inscription
dimanche 22 décembre 2002
Statut
Membre
Dernière intervention
27 novembre 2008

salut salut,

Je vous remercie pour vos posts...

Arthenius => je viens de lire l'article sur les index et comme j'ai pu comprendre et comme indique =>

La plupart du temps lorsque vous créez une contrainte de clef primaire, étrangère ou une contrainte d'unicité, le SGBDR implante automatiquement un index pour assurer la mécanisme de contrainte avec des performances correctes. En effet une contrainte d'unicité est facilité si un tri sur les données de la colonne peut être activé très rapidement.

Donc comme il cree des index sur les clefs, je vais juste cree mes index pour les colonnes les plus sollicitées par les recherches ....

je te remercie

Bonne semaine

ciao
Christophe
Messages postés
778
Date d'inscription
dimanche 22 décembre 2002
Statut
Membre
Dernière intervention
27 novembre 2008

re,

tu ne voudrais pas venir un peu a la maison ....m'aider un peu ;-) !

en tout cas je te remercie pour toutes ces infos car tu m'aides bien !

Bonne semaine

un debutant
christophe
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
14
arf...
non ca ira merci...
g assez a faire ici :o)))

et je fais pas le menage :o)))))


Arthenius

"Il n'y a pas de mauvais développeurs,...
mais uniquement de mauvais utilisateurs..."