Vergleich von ArcGIS-, ArcSDE- und PostgreSQL-Datentypen
Beim Erstellen einer Tabelle oder Hinzufügen einer Spalte zu einer Tabelle in der Datenbank werden Spalten mit einem bestimmten Datentyp erstellt. Datentypen sind Klassifizierungen, die mögliche Datenwerte und die mit den entsprechenden Daten durchführbare Operationen vorgeben sowie festlegen, wie die Daten in der betreffenden Spalte in der Datenbank gespeichert werden.
Beim Importieren von Daten eines bestimmten Typs in eine Spalte eines anderen Datentyps müssen Sie wissen, welche Datentypen in ArcSDE den Datentypen in Ihrem Datenbankmanagementsystem (DBMS) entsprechen, da sich dies auf den Inhalt der Daten auswirken kann. Darüber hinaus ist es hilfreich, beim Erstellen neuer Datasets in ArcGIS die einander entsprechenden Datentypen in ArcGIS und dem verwendeten DBMS zu kennen.
Beim Erstellen einer Feature-Class oder Tabelle in ArcGIS, können Sie einem Feld 11 verschiedene Datentypen zuordnen. Dies bedeutet, dass einige Datentypen nur außerhalb von ArcGIS erstellt werden können.
ArcSDE-Datentyp |
PostgreSQL-Datentyp |
ArcGIS-Datentyp |
Hinweise |
---|---|---|---|
SE_STRING_TYPEf |
VARCHAR |
TEXT |
|
SE_INT16_TYPE (SE_SMALLINT_TYPE) |
SMALLINT |
SHORT INTEGER |
|
SE_INT32_TYPE (SE_INTEGER_TYPE) |
INTEGER |
LONG INTEGER |
|
SE_INT64_TYPE |
BIGINT |
na |
Um Spalten mit diesem Datentyp zu erstellen, muss der Serverkonfigurationsparameter INT64TYPES auf TRUE festgelegt sein. |
SE_FLOAT32_TYPE (SE_FLOAT_TYPE) |
REAL |
na |
|
SE_FLOAT64_TYPE (SE_DOUBLE_TYPE) |
NUMERIC (n,m) |
na |
|
SE_DATE_TYPE |
TIMESTAMP WITHOUT ZONE |
DATE |
|
SE_UUID_TYPE |
VARCHAR(38) |
GUID |
|
SE_BLOB_TYPE |
BYTEA |
BLOB |
|
SE_SHAPE_TYPE |
ST_GEOMETRY oder GEOMETRY * |
GEOMETRY |
Der PostgreSQL-Datentyp hängt vom Konfigurationsschlüsselwort ab, das beim Erstellen des Layers verwendet wird: ST_GEOMETRY oder PG_GEOMETRY (PostGIS-Geometrie). |
SE_XML_TYPE |
SDE_XML oder XML |
na |
XML-Spalten werden in ArcGIS Desktop nicht bereitgestellt. |
SE_RASTER_TYPE |
BYTEA oder ST_RASTER |
RASTER |
Der PostgreSQL-Datentyp hängt von der in der Tabelle DBTUNE angegebenen Raster-Speicherung ab. Sie müssen "ST_Raster" in der Datenbank getrennt konfigurieren. Anweisungen finden Sie unter Installieren des ST_Raster-Typs unter PostgreSQL. |
SE_STRING_TYPEf |
INTEGER |
OBJECTID |
|
NUMERIC(38,8) |
FLOAT |
||
NUMERIC(38,8) |
DOUBLE |
* "ST_Geometry" und "Geometry" sind übergeordnete Klassen. Wenn Sie Feature-Classes in ArcGIS Desktop erstellen, verwenden Point-Feature-Classes, die als "ST_Geometry" erstellt werden, den Subtype "ST_Point", und Point-Feature-Classes, die als PostGIS-Geometrie erstellt werden, den Subtype "Point" zur Speicherung. Für alle anderen Typen von Feature-Classes, die in ArcGIS Desktop erstellt werden, wird die übergeordnete Klasse verwendet. Wenn Sie räumliche Spalten mit SQL erstellen, hängt der tatsächlich erstellte Daten-Subtype vom angegebenen Subtype ab.