Esri empfiehlt, beim Anlegen von Feature-Classes die ArcGIS for Desktop-Werkzeuge zum Erstellen von Raumbezügen zu verwenden. ArcGIS enthält zahlreiche Werkzeuge für diesen Task und berechnet die X-, Y-, Z- und M-Einheiten sowie den Versatz, um eine hohe Genauigkeit der Daten zu gewährleisten. Einige Benutzer und Anwendungsentwickler benötigen jedoch u. U. weitere Möglichkeiten zum Erstellen von Raumbezügen. In diesem Thema finden Sie Beispiele für die Verwendung von SQL zum Erstellen von Raumbezügen.
Während der Konstruktion wird das Raumbezugssystem einer Geometrie zugeordnet. Das Raumbezugssystem muss in der Raumbezugstabelle enthalten sein. Alle Geometrien einer Spalte müssen dasselbe Raumbezugssystem aufweisen.
Erstellen eines Raumbezugs in IBM DB2
In DB2 wird ein Raumbezug mit dem Befehl "db2se create_srs" (oder durch Aufrufen der gespeicherten Prozedur "db2se.ST_create_srs") erstellt. Im folgenden Beispiel wird ein Eintrag für einen Raumbezug mit dem Maßstabsfaktor 10 und einem spezifischen Koordinatensystem erstellt:
db2se create_srs mydb -srsName \"mysrs\"
-srsID 310000 -xScale 10 -coordsysName \"GCS_North_American_1983\"
Weitere Information zu diesem Befehl finden Sie im DB2 Spatial Extender and Geodetic Extender User's Guide and Reference im Abschnitt "Creating a spatial reference system".
Erstellen eines Raumbezugs in IBM Informix
In Informix kann mit einer INSERT-Anweisung wie im folgenden Beispiel ein Eintrag für einen Raumbezug in der Tabelle "spatial_references" erstellt werden. Ersetzen Sie die SRID durch einen Einzelwert.
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
);
Weitere Information zum Erstellen von Raumbezügen in Informix finden Sie im IBM Informix Spatial DataBlade Module User's Guide im Abschnitt "Using the spatial references table".
Erstellen eines Raumbezugs in Oracle
Zur Erstellung eines Raumbezugs für Tabellen mit dem räumlichen Datentyp in Oracle verwenden Sie die INSERT-Anweisung wie im folgenden Beispiel. Ersetzen Sie die SRID durch einen Einzelwert.
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'
);
Erstellen eines Raumbezugs in PostgreSQL
Zur Erstellung eines Raumbezugssystems für den räumlichen Datentyp in PostgreSQL verwenden Sie eine INSERT-Anweisung ähnlich der im folgenden Beispiel. Ersetzen Sie die SRID durch einen Einzelwert.
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'
);
Erstellen eines Raumbezugs in SQLite
Verwenden Sie eine INSERT-Anweisung wie im folgenden Beispiel, um der Tabelle "st_aux_spatial_reference_systems" einen Raumbezug in einer SQLite-Datenbank hinzuzufügen, die "ST_Geometry" verwendet. Ersetzen Sie die SRID durch einen Einzelwert.
INSERT INTO st_aux_spatial_reference_systems (srid, auth_name, auth_srid,
sr_text, falsex, falsey, xyunits, falsez, zunits, falsem,
munits, xycluster_tol, zcluster_tol, mcluster_tol)
VALUES (
310000,
NULL,
4269,
'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]]',
-400,
-400,
1000000000,
-100000,
1.0,
-100000,
1.0,
0,
0,
0
);