IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement SQL Server Discussion :

[SQL SERVER 2005] primary key clustered


Sujet :

Développement SQL Server

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Avril 2008
    Messages : 161
    Points : 133
    Points
    133
    Par défaut [SQL SERVER 2005] primary key clustered
    Bonjour,

    une petite question sûrement toute bête :
    Est ce que quelqu'un pourrait m'expliquer en quelques mots ce que ça change l'instruction "clustered" dans la définition d'une clé primaire ?

    Merci

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 862
    Points : 53 009
    Points
    53 009
    Billets dans le blog
    6
    Par défaut
    Derrière une clef primaire (contrainte PRIMARY KEY)ou une contrainte de type UNIQUE, les SGBDR créés un index.
    Un index est une structure de données redondante qui permet d'ordonner les données indexées afin de retrouver le plus vite possible les données que l'on index.
    Ainsi les n° dans une rue sont en fait un index... Autrefois il n'y avait pas de n° dans les rues (mais il y avait moins de monde et les gens se connaissait... On a ensuite inventé les immeubles à appartement, ce qui a compliqué la chose).
    Pour ce qui est des structure de stockage des index il en existe différentes, mais la plus utilisée est un arbre dit équilibré (on s'arrange pour que le niveau des feuilles de l'arbre soit constant).
    Cependant dans un index on a, à la fois la données indexée mais aussi une marque afin de retrouver la ligne dans la table. Cette marque peut être par exemple une référence à un emplacement physique de la ligne dans les divers fichier de la base (N° de fichier, N° de page et N° d'emplacement de la ligne dans la page).

    L'idée du cluster est de faire une pierre deux coup : mélanger l'index et la table. On s'évite ainsi une redondance et les lignes de la table sont physiquement triées selon l'ordre de la clef d'index.
    Ainsi, une table dotée des colonnes Nom, Prénom, DateNaissance, Sexe, si elle est dotée d'un index cluster sur Nom est physiquement triée sur les valeurs des noms des personnes. Les autres colonnes n'étant pas triées.
    On s'économise ainsi une redondance de données.

    Évidemment on ne peut avoir qu'un seul index cluster dans une table car en fait l'index cluster c'est la table elle même !

    Pas opposition, les index non cluster s'appellent des index heap. (en tas)...

    A +

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Avril 2008
    Messages : 161
    Points : 133
    Points
    133
    Par défaut
    OK
    merci boss!
    (j'ai bien aimé la petite histoire )

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. SQL Server 2005 - Symmetric key - mot de passe perdu
    Par myriss dans le forum Administration
    Réponses: 2
    Dernier message: 21/01/2012, 14h44
  2. SQL Server 2005 : mirroir et cluster
    Par orafrance dans le forum Administration
    Réponses: 0
    Dernier message: 17/07/2008, 10h26
  3. [SQL Server 2005] Mais où se cache le MASTER KEY ?
    Par Chauve souris dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 04/06/2007, 18h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo