Partager via


index_option (Transact-SQL)

Mis à jour : 5 décembre 2005

Spécifie un ensemble d'options applicables à un index qui fait partie d'une définition de contrainte créée à l'aide de ALTER TABLE.

Icône Lien de rubriqueConventions de la syntaxe de Transact-SQL

Syntaxe

{ 
    PAD_INDEX = { ON | OFF }
  | FILLFACTOR = fillfactor
  | IGNORE_DUP_KEY = { ON | OFF }
  | STATISTICS_NORECOMPUTE  = { ON | OFF }
  | ALLOW_ROW_LOCKS= { ON | OFF }
  | ALLOW_PAGE_LOCKS={ ON | OFF }
  | SORT_IN_TEMPDB = { ON | OFF } 
  | ONLINE = { ON | OFF }
  | MAXDOP = max_degree_of_parallelism
}

Arguments

  • PAD_INDEX = { ON | OFF }
    Spécifie le remplissage de l'index. La valeur par défaut est OFF.

    • ON
      Le pourcentage d'espace libre spécifié par FILLFACTOR est appliqué aux pages de niveau intermédiaire de l'index.
    • OFF ou fillfactor n'est pas spécifié
      Les pages de niveau intermédiaire sont remplies jusqu'à la presque totalité de la capacité, laissant suffisamment d'espace pour au moins une ligne de la taille maximale possible de l'index, compte tenu du jeu de clés des pages intermédiaires.
  • FILLFACTOR **=**fillfactor
    Spécifie un pourcentage indiquant le taux de remplissage appliqué par Moteur de base de données au niveau feuille de chaque page d'index lors de la création ou de la modification de l'index. La valeur spécifiée doit être un entier compris entre 1 et 100. La valeur par défaut est 0.

    ms186869.note(fr-fr,SQL.90).gifRemarque :
    Les valeurs 0 et 100 de l'option fill factor sont identiques en tous points.
  • IGNORE_DUP_KEY = { ON | OFF }
    Spécifie la réponse d'erreur aux valeurs de clé dupliquées dans une transaction INSERT de plusieurs lignes sur un index unique cluster ou non cluster. La valeur par défaut est OFF.

    • ON
      Un message d'avertissement est émis et seules échouent les lignes qui enfreignent l'index UNIQUE.
    • OFF
      Un message d'erreur est émis et la totalité de la transaction INSERT est restaurée.
    ms186869.note(fr-fr,SQL.90).gifRemarque :
    IGNORE_DUP_KEY n'a aucun effet sur une instruction UPDATE.
  • STATISTICS_NORECOMPUTE = { ON | OFF }
    Indique si les statistiques sont recalculées. La valeur par défaut est OFF.

    • ON
      Les statistiques obsolètes ne sont pas automatiquement recalculées.
    • OFF
      La mise à jour automatique des statistiques est activée.
  • ALLOW_ROW_LOCKS = { ON | OFF }
    Indique si les verrous de ligne sont autorisés. La valeur par défaut est ON.

    • ON
      Les verrous de ligne sont autorisés lors de l'accès à l'index. Le Moteur de base de données détermine à quel moment les verrous de ligne sont utilisés.
    • OFF
      Les verrous de ligne ne sont pas utilisés.
  • ALLOW_PAGE_LOCKS = { ON | OFF }
    Indique si les verrous de page sont autorisés. La valeur par défaut est ON.

    • ON
      Les verrous de page sont autorisés lors de l'accès à l'index. Le Moteur de base de données détermine à quel moment les verrous de page sont utilisés.
    • OFF
      Les verrous de page ne sont pas utilisés.
  • SORT_IN_TEMPDB = { ON | OFF }
    Indique si les résultats de tri doivent être stockés dans tempdb. La valeur par défaut est OFF.

    • ON
      Les résultats de tri intermédiaires utilisés pour construire l'index sont stockés dans tempdb. Cela permet de réduire la durée de création d'un index si tempdb n'est pas sur le même groupe de disques que la base de données utilisateur. Toutefois, cela augmente la quantité d'espace disque utilisée pendant la construction de l'index.
    • OFF
      Les résultats de tri intermédiaires sont stockés dans la même base de données que l'index.
  • ONLINE = { ON | OFF }
    Indique si les tables sous-jacentes et les index associés sont disponibles pour les requêtes et la modification de données pendant l'opération d'index. La valeur par défaut est OFF.

    ms186869.note(fr-fr,SQL.90).gifRemarque :
    Les index uniques non cluster ne peuvent pas être créés en ligne. Il s'agit des index qui sont créés en raison d'une contrainte UNIQUE ou PRIMARY KEY.
    • ON
      Les verrous de table à long terme ne sont pas maintenus pendant la durée de l'opération d'index. Pendant la phase principale de l'opération d'index, seul un verrou intentionnel de partage (IS) est maintenu sur la table source. Ce paramétrage permet de poursuivre les interrogations ou les mises à jour de la table sous-jacente et des index. Au début de l'opération, un verrou partagé (S) est maintenu sur l'objet source pendant une période de temps très brève. À la fin de l'opération, pendant une brève période de temps, un verrou S (partagé) est acquis sur la source si un index non-cluster est en cours de création, ou un verrou de modification de schéma (SCH-M) est acquis lorsqu'un index cluster est créé ou supprimé en ligne et lorsqu'un index cluster ou non-cluster est en cours de reconstruction. ONLINE ne peut pas avoir pour valeur ON lorsqu'un index est en cours de création sur une table temporaire locale.
    • OFF
      Les verrous de table sont appliqués pendant l'opération d'index. Une opération d'indexation hors connexion qui crée, reconstruit ou supprime un index cluster, ou encore reconstruit ou supprime un index non-cluster, acquiert un verrou de modification de schéma (M-Sch) sur la table. Cela empêche tout accès utilisateur à la table sous-jacente pendant l'opération. Une opération d'index hors connexion qui crée un index non-cluster acquiert un verrou partagé (S) sur la table. Cela empêche les opérations de mise à jour dans la table sous-jacente mais autorise les opérations de lecture, telles que les instructions SELECT.

    Pour plus d'informations, consultez Fonctionnement des opérations d'index en ligne. Pour plus d'informations sur les verrous, consultez Modes de verrouillage.

    ms186869.note(fr-fr,SQL.90).gifRemarque :
    Les opérations d'index en ligne ne sont disponibles que dans SQL Server 2005 Enterprise Edition.
  • MAXDOP = max_degree_of_parallelism
    Remplace l'option de configuration max degree of parallelism pendant l'opération d'index. Pour plus d'informations, consultez Option max degree of parallelism. Utilisez MAXDOP pour limiter le nombre de processeurs utilisés dans une exécution de plans parallèles. Le nombre maximum de processeurs est 64.

    Valeurs possibles de max_degree_of_parallelism :

    • 1
      Supprime la génération de plans parallèles.
    • >1
      Limite au nombre spécifié la quantité maximale de processeurs utilisés dans une opération d'index parallèle.
    • 0 (valeur par défaut)
      Utilise le nombre réel de processeurs, ou moins, en fonction de la charge actuelle de travail du système.

    Pour plus d'informations, consultez Configuration d'opérations d'index parallèles.

    ms186869.note(fr-fr,SQL.90).gifRemarque :
    Les opérations d'index parallèles ne sont disponibles que dans SQL Server 2005 Enterprise Edition.

Notes

Pour une description complète des options d'index, consultez CREATE INDEX (Transact-SQL).

Voir aussi

Référence

ALTER TABLE (Transact-SQL)
column_constraint (Transact-SQL)
computed_column_definition (Transact-SQL)
table_constraint (Transact-SQL)

Aide et Informations

Assistance sur SQL Server 2005

Historique des modifications

Version Historique

5 décembre 2005

Nouveau contenu :
  • Une remarque concernant les index non-cluster uniques a été ajoutée dans la définition de l'option ONLINE.