Voici une liste d'informations à garder à l'esprit lorsque vous créez avec des outils tiers des tables spatiales que vous utiliserez avec ArcGIS :
-
Votre table doit comporter une colonne unique et non nulle à utiliser comme identifiant unique dans ArcGIS.
ArcGIS requiert une colonne d'identifiants uniques d'entités dans la table spatiale pour exécuter des requêtes spatiales, des requêtes de fichier journal, des opérations de ligne unique et des opérations de base de données versionnée.
Si vous souhaitez enregistrer la table avec la géodatabase, ArcGIS ajoute une colonne d'identifiants uniques nommée ObjectID. Bien qu'elle soit généralement nommée OBJECTID, cette colonne peut prendre un autre nom si une colonne ainsi nommée existe déjà dans la table. Si une colonne indexée d'entiers ou de valeurs d'identifiants uniques non nuls existe dans la table, vous avez la possibilité de l'utiliser comme colonne ObjectID. La géodatatabe conservera les valeurs de la colonne ObjectID de toutes les tables enregistrées avec la géodatabase.
Si vous souhaitez afficher une table de base de données spatiale dans ArcGIS Desktop, vous pouvez spécifier une ou plusieurs colonnes qui, ensemble, constituent l'identifiant unique de la table.
Si vous souhaitez modifier des tables de base de données spatiales via un service d'entités et que vous n'avez pas l'intention d'inscrire la table auprès d'une géodatabase, la table doit contenir une colonne unique non nulle gérée par la base de données. Vous pouvez utiliser l'outil de géotraitement Ajouter un champ ID incrémentiel pour ajouter un champ de sélection à votre table.
-
Evitez d'avoir plusieurs colonnes spatiales dans la même table.
Il est possible de créer plusieurs colonnes spatiales dans la même table. Toutefois, ArcGIS ne prend pas en charge plusieurs colonnes de géométrie dans une même table. Pour utiliser des tables qui comportent plusieurs colonnes spatiales, vous pouvez créer une vue spatiale qui inclut une seule des colonnes spatiales. Sinon, vous pouvez définir une couche de requête incluant uniquement l'une des colonnes spatiales.
-
Ne mélangez pas les majuscules et les minuscules dans les noms d'objets.
Par défaut, les noms des objets de base de données sont stockés entièrement en lettres majuscules dans Oracle et DB2 et entièrement en lettres minuscules dans PostgreSQL et Informix. Il est possible, lorsque vous créez des tables avec SQL, de forcer la base de données à stocker des noms contenant à la fois des majuscules et des minuscules. Toutefois, si vous envisagez d'utiliser vos données avec ArcGIS, ne procédez pas ainsi. La suite logicielle ArcGIS ne permet pas de tenir compte de la casse. Si vous créez des noms d'objets contenant des majuscules et des minuscules, les requêtes exécutées à l'aide de clients ArcGIS échouent. De la même façon, si vous créez des noms d'objets en lettres majuscules dans une base de données PostgreSQL ou des noms d'objets en lettres minuscules dans une base de données Oracle, les requêtes ArcGIS échoueront.
-
Les enregistrements que vous insérez dans une table spatiale doivent avoir un type d'entité correspondant au type défini pour la colonne spatiale.
Une colonne spatiale peut uniquement accepter des données du type d'entité exigé par la colonne spatiale. Par exemple, une colonne de type de ST_Polygon refuse les autres types de géométrie tels que ST_LineString.
Toutefois, ST_Geometry accepte des géométries de tous les sous-types pris en charge. Même si vous pouvez insérer différentes entités dans une colonne ST_Geometry, ArcGIS n'en utilise qu'une. Lorsque vous affichez des données à partir des classes d'entités dans une base de données, ArcGIS lit la première ligne de la table et affiche uniquement ce type d'entité. Pour afficher d'autres types d'entités dans la table, vous pouvez modifier la définition de la couche de requête de la table afin d'afficher un type différent. Si vous enregistrez la table spatiale avec la géodatabase, vous devez choisir un type d'entité pour cette table.
-
Utilisez une seule référence spatiale pour les données de la table.
ArcGIS applique une référence spatiale à la table entière. Lorsque vous affichez les classes d'entités d'une base de données, vous devez spécifier une référence spatiale et seules les données contenues dans cette dernière sont rendues. Lorsque vous enregistrez la table avec la géodatabase, vous spécifiez la référence spatiale à utiliser, et vous ne pouvez en indiquer qu'une seule. Si vous inscrivez la table avec une référence spatiale, mais que certaines des données se trouvent en réalité dans une référence spatiale différente, les données ne s'affichent pas correctement et vous pouvez recevoir un message d'erreur.