Partager via


Créer, modifier et supprimer les index spatiaux

Un index spatial peut effectuer plus efficacement certaines opérations sur une colonne du type de données geometry ou geography (une colonne spatiale). Plusieurs index spatiaux peuvent être spécifiés sur une colonne spatiale. Cela peut s'avérer utile par exemple pour indexer différents paramètres de pavage dans une même colonne.

Il existe plusieurs restrictions applicables à la création d'index spatiaux. Pour plus d'informations, consultez Restrictions sur les index spatiaux dans cette rubrique.

[!REMARQUE]

Pour plus d'informations sur la relation entre les index spatiaux et les partitions et groupes de fichiers, consultez la section « Remarques » dans CREATE SPATIAL INDEX (Transact-SQL).

Dans cette rubrique

  • Création, modification et suppression d'index spatiaux

    • Pour créer un index spatial

    • Pour modifier un index spatial

    • Pour supprimer un index spatial

  • Restrictions sur les index spatiaux

Création, modification et suppression d'index spatiaux

Pour créer un index spatial

  • Pour créer un index spatial à l'aide de Transact-SQL
    CREATE SPATIAL INDEX (Transact-SQL)

  • Pour créer un index spatial à l'aide de la boîte de dialogue Nouvel index dans Management Studio

    Pour créer un index spatial dans Management Studio

    1. Dans l'Explorateur d'objets, connectez-vous à une instance du Moteur de base de données SQL Server et développez-la.

    2. Développez Bases de données, développez la base de données qui contient la table dotée de l'index spécifié, puis développez Tables.

    3. Développez la table pour laquelle vous souhaitez créer l'index.

    4. Cliquez avec le bouton droit sur Index et sélectionnez Nouvel index.

    5. Dans le champ Nom de l'index, entrez un nom pour l'index.

    6. Dans la liste déroulante Type d'index, sélectionnez Spatial.

    7. Pour spécifier la colonne spatiale à indexer, cliquez sur Ajouter.

    8. Dans la boîte de dialogue Sélectionner des colonnes dans <table name>, sélectionnez une colonne de type geometry ou geography en activant la case à cocher correspondante. Toutes les autres colonnes spatiales deviennent alors impossibles à modifier. Si vous souhaitez sélectionner une autre colonne spatiale, vous devez tout d'abord désactiver la colonne sélectionnée actuellement. Lorsque vous avez terminé, cliquez sur OK.

    9. Vérifiez votre sélection de colonne dans la grille Colonnes clés d'index.

    10. Dans le volet Sélectionner une page de la boîte de dialogue Propriétés de l'index , cliquez sur Spatial.

    11. Dans la page Spatial, spécifiez les valeurs que vous souhaitez utiliser pour les propriétés spatiales de l'index.

      Lorsque vous créez un index sur une colonne de type geometry, vous devez spécifier les coordonnées **(X-min)**Y-min et **(X-max)**Y-max de la zone englobante. Pour un index sur une colonne de type geography, les champs de zone englobante deviennent en lecture seule après que vous avez spécifié le schéma de pavage Grille géographique, car le pavage de la grille de géographie n'utilise pas de zone englobante.

      Si vous le souhaitez, vous pouvez spécifier des valeurs autres que les valeurs par défaut pour le champ Cellules par objet et pour la densité de grille à tout niveau du schéma de pavage. La quantité par défaut de cellules par objet est 16 pour SQL Server 2008 ou 8 pour SQL Server 2012, et la densité de grille par défaut est Moyenne pour SQL Server 2008.

      Vous pouvez sélectionner GEOMETRY_AUTO_GRID ou GEOGRAPHY_AUTO_GRID pour le schéma de pavage dans SQL Server. Lorsque GEOMETRY_AUTO_GRID ou GEOGRAPHY_AUTO_GRID est sélectionné, les options de densité de la grille Niveau 1, Niveau 2, Niveau 3 et Niveau 4 sont désactivées.

      Pour plus d'informations sur ces propriétés, consultez Propriétés de l'index – Aide (F1).

    12. Cliquez sur OK.

    [!REMARQUE]

    Pour créer un autre index spatial sur la même colonne spatiale ou sur une colonne spatiale différente, répétez les étapes précédentes.

    [Haut de la page]

  • Pour créer un index spatial à l'aide du Concepteur de tables dans Management Studio

    Pour créer un index spatial dans le Concepteur de tables

    1. Dans l'Explorateur d'objets, cliquez avec le bouton droit sur la table pour laquelle vous souhaitez créer un index spatial, puis cliquez sur Conception.

      La table s'ouvre dans le Concepteur de tables.

    2. Sélectionnez une colonne geometry ou geography pour l'index.

    3. Dans le menu Concepteur de tables, cliquez sur Index spatial.

    4. Dans la boîte de dialogue Index spatiaux, cliquez sur Ajouter.

    5. Sélectionnez le nouvel index dans la liste Index spatial sélectionné et, dans la grille située à droite, définissez les propriétés de l'index spatial. Pour plus d'informations sur les propriétés, consultez Boîte de dialogue Index spatiaux (Visual Database Tools).

[Haut de la page]

Pour modifier un index spatial

[Haut de la page]

Pour supprimer un index spatial

  • Pour supprimer un index spatial à l'aide de Transact-SQL
    DROP INDEX (Transact-SQL)

  • Pour supprimer un index à l'aide de Management Studio
    Supprimer un index

  • Pour supprimer un index spatial à l'aide du Concepteur de tables dans Management Studio

    Pour supprimer un index spatial dans le Concepteur de tables

    1. Dans l'Explorateur d'objets, cliquez avec le bouton droit sur la table contenant l'index spatial que vous souhaitez supprimer et cliquez sur Conception.

      La table s'ouvre dans le Concepteur de tables.

    2. Dans le menu Concepteur de tables, cliquez sur Index spatial.

      La boîte de dialogue Index spatial s'ouvre.

    3. Cliquez sur l'index que vous souhaitez supprimer dans la colonne Index spatial sélectionné.

    4. Cliquez sur Supprimer.

[Haut de la page]

Restrictions sur les index spatiaux

Un index spatial peut être créé uniquement sur une colonne de type geometry ou geography.

Restrictions sur les tables et les vues

Les index spatiaux peuvent être définis uniquement sur une table dotée d'une clé primaire. Le nombre maximal de colonnes clés primaire sur la table est de 15.

La taille maximale des enregistrements de clés d'index est de 895 octets. Les tailles supérieures génèrent une erreur.

[!REMARQUE]

Les métadonnées de clé primaire ne peuvent pas être modifiées pendant qu'un index spatial est défini sur une table.

Des index spatiaux ne peuvent pas être spécifiés sur des vues indexées.

Restrictions sur plusieurs index spatiaux

Vous pouvez créer jusqu'à 249 index spatiaux sur les colonnes spatiales dans une table prise en charge. La création de plusieurs index spatiaux sur la même colonne spatiale peut être utile, par exemple pour indexer des paramètres de pavage différents dans une même colonne.

Vous pouvez créer un seul index spatial à la fois.

Index spatiaux et parallélisme de processus

Une construction d'index peut utiliser le parallélisme de processus disponible.

Restrictions de version

Les nouveaux pavages spatiaux pour SQL Server 2012 ne peuvent pas être répliqués dans SQL Server 2008 R2 ou SQL Server 2008. Vous devez utiliser les pavages spatiaux SQL Server 2008 R2 ou SQL Server 2008 pour les index spatiaux lorsqu'une compatibilité descendante avec les bases de données SQL Server 2008 R2 ou SQL Server 2008 est une condition obligatoire.

[Haut de la page]

Voir aussi

Concepts

Vue d'ensemble des index spatiaux