Création de références spatiales avec SQL

Esri recommande de créer des références spatiales en utilisant les outils ArcGIS for Desktop lors de la création de classes d'entités. ArcGIS fournit une suite d'outils complète pour cette tâche et calculera les unités et les décalages x, y, z et m pour vous permettre de conserver des données de haute précision. Esri comprend cependant que certains utilisateurs et développeurs d'applications veulent avoir le choix lors de la création de références spatiales. Cette rubrique fournit des exemples d'utilisation du langage SQL pour créer des références spatiales.

Le système de référence spatiale est attribué à une géométrie lors de sa construction. Le système de référence spatiale doit exister dans la table de référence spatiale. Toutes les géométries d'une colonne doivent avoir le même système de référence spatiale.

Création d'une référence spatiale dans IBM DB2

Dans DB2, la commande permettant de créer une référence spatiale est db2se create_srs (ou appelez la procédure stockée db2se.ST_create_srs). L'exemple suivant crée un enregistrement de référence spatiale avec un facteur d'échelle de 10 et en utilisant un système de coordonnées spécifique :

db2se create_srs mydb -srsName \"mysrs\" 
-srsID 310000 -xScale 10 -coordsysName \"GCS_North_American_1983\"

Pour plus d'informations sur l'utilisation de cette commande, reportez-vous à la section "Creating a spatial reference system" du manuel DB2 Spatial Extender and Geodetic Extender User's Guide and Reference.

Création d'une référence spatiale dans IBM Informix

Les utilisateurs d'Informix peuvent créer un enregistrement de référence spatiale en utilisant une instruction INSERT semblable à l'exemple suivant :

INSERT INTO SDE.SPATIAL_REFERENCES (srid, description, 
auth_name, auth_srid, falsex, falsey, xyunits, falsez, 
zunits, falsem, munits, srtext, object_flags, 
xycluster_tol, zcluster_tol, mcluster_tol)
VALUES (
310000, 
'GCS_North_American_1983', 
NULL, 
NULL, 
-400,
-400,
1000000000,
-100000,
100000,
-100000,
10000, 
'GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]]',
1,
0,
0,
0);

Pour plus d'informations sur la création d'une référence spatiale dans Informix, reportez-vous à la section "Using the spatial references table" du manuel IBM Informix Spatial DataBlade Module User's Guide.

Création d'une référence spatiale dans Oracle

La création d'une référence spatiale pour les tables qui utilisent le type spatial dans Oracle s'effectue via une instruction INSERT semblable à la suivante. Veillez à remplacer le SRID par une valeur unique. Dans l'exemple suivant, le SRID correspond à la valeur 1 dans la troisième ligne de code.

INSERT INTO SDE.ST_SPATIAL_REFERENCES (SR_NAME, SRID, 
X_OFFSET, Y_OFFSET, XYUNITS, Z_OFFSET, Z_SCALE, M_OFFSET, 
M_SCALE, MIN_X, MAX_X, MIN_Y, MAX_Y, MIN_Z, MAX_Z, MIN_M, 
MAX_M, CS_ID, CS_NAME, CS_TYPE, ORGANIZATION, 
ORG_COORDSYS_ID, DEFINITION, DESCRIPTION)
VALUES (
'GCS_North_American_1983', 
310000,
-400,
-400,
1000000000, 
-100000, 
100000, 
-100000, 
100000, 
9.999E35,
-9.999E35, 
9.999E35, 
-9.999E35, 
9.999E35, 
-9.999E35, 
9.999E35, 
-9.999E35, 
4269, 
'GCS_North_American_1983',
'PROJECTED', 
NULL,
NULL,
'GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]]',
'ArcSDE SpRef');

Création d'une référence spatiale dans PostgreSQL

Pour créer un système de référence spatiale pour le type spatial dans PostgreSQL, utilisez une instruction INSERT semblable à l'instruction ci-dessous. Veillez à remplacer le SRID par une valeur unique. Dans l'exemple suivant, le SRID correspond à la valeur 1 dans la troisième ligne de code.

INSERT INTO sde.st_spatial_references (sr_name, srid, 
x_offset, y_offset, xyunits, z_offset, z_scale, m_offset, 
m_scale, min_x, max_x, min_y, max_y, min_z, max_z, min_m, 
max_m, cs_id, cs_name, cs_type, organization, 
org_coordsys_id, definition, description)
VALUES (
'GCS_North_American_1983',
310000, 
-400, 
-400, 
1000000000,
-100000, 
100000, 
-100000, 
100000, 
9.999E35,
-9.999E35, 
9.999E35, 
-9.999E35, 
9.999E35, 
-9.999E35, 
9.999E35, 
-9.999E35, 
4269, 
'GCS_North_American_1983',
'PROJECTED', 
NULL,
NULL,
'GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]]',
'ArcSDE SpRef');

Thèmes connexes

9/12/2013