In ArcGIS unterstützte 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ührbaren Operationen vorgeben sowie festlegen, wie die Daten in der betreffenden Spalte in der Datenbank gespeichert werden.
Wenn Sie auf Datenbanktabellen von ArcGIS zugreifen, können Sie mit bestimmten Datentypen arbeiten. Wenn Sie über den Knoten "Datenbankverbindungen" im Kataloginhaltsverzeichnis oder über einen Abfrage-Layer in ArcMap auf die Datenbanktabelle zugreifen, filtert ArcGIS alle nicht unterstützten Datentypen heraus. Wenn Sie direkt auf die Datenbanktabelle zugreifen, werden nicht unterstützte Datentypen nicht in der ArcGIS-Schnittstelle angezeigt und Sie können sie nicht durch ArcGIS bearbeiten. Wenn Sie Tabellen kopieren, die nicht unterstützte Datentypen von ArcGIS enthalten, werden ebenfalls nur die unterstützten Datentypen kopiert. Wenn Sie die Tabelle in eine andere Datenbank oder Geodatabase einfügen, sind die nicht unterstützten Datentypspalten nicht vorhanden.
Wenn Sie in ArcGIS eine Feature-Class oder eine Tabelle erstellen oder einer vorhandenen Tabelle oder Feature-Class mit ArcGIS eine Spalte hinzufügen, können einem Feld 12 mögliche ArcGIS-Datentypen zugewiesen werden. Datenbankdatentypen, die diesen Typen nicht entsprechen, können nicht direkt in ArcGIS-Client-Anwendungen verwendet werden.
In der ersten Spalte werden die ArcGIS-Datentypen aufgeführt. Die zweite Spalte enthält den PostgreSQL-Datentyp, der in der Datenbank erstellt wird. Die dritte Spalte zeigt, welche anderen PostgreSQL-Datentypen (falls vorhanden) dem ArcGIS-Datentyp beim Anzeigen in ArcGIS zugeordnet werden.
ArcGIS-Datentypen |
Erstellte PostgreSQL-Datentypen | Andere PostgreSQL-Datentypen, die angezeigt werden können |
Hinweise |
---|---|---|---|
BLOB |
BYTEA |
||
Datum |
TIMESTAMP WITHOUT ZONE |
TIMESTAMP | |
DOUBLE |
NUMERIC(p) |
BIG SERIAL, DOUBLE PRECISION | Die Genauigkeit und der Maßstab, die in ArcGIS angegeben sind, können Auswirkungen auf den resultierenden Datentyp haben, der in der Datenbank erstellt wird. Weitere Informationen finden Sie unter ArcGIS-Felddatentypen. |
FLOAT |
NUMERIC(p) |
Die Genauigkeit und der Maßstab, die in ArcGIS angegeben sind, können Auswirkungen auf den resultierenden Datentyp haben, der in der Datenbank erstellt wird. Weitere Informationen finden Sie unter ArcGIS-Felddatentypen. |
|
GEOMETRY |
ST_GEOMETRY or GEOMETRY |
In einer Geodatabase wird der in der Datenbank erstellte Datentyp durch die Einstellung "GEOMETRY_STORAGE" des Konfigurationsschlüsselworts bestimmt, das beim Erstellen der Feature-Class verwendet wird. "ST_Geometry" und "Geometry" sind übergeordnete Klassen. Wenn Sie Feature-Classes in ArcGIS for 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" für den Speicher. Für alle anderen in ArcGIS for Desktop erstellten Feature-Class-Typen 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. Um den Typ "ST_Geometry" in einer Datenbank verwenden zu können, müssen Sie ihn installieren. Weitere Informationen finden Sie unter Hinzufügen des Typs "ST_Geometry" zu einer PostgreSQL-Datenbank. Sie müssen PostGIS in Ihrem PostgreSQL-Datenbank-Cluster installieren und die Datenbank muss für die Verwendung von PostGIS aktiviert werden, damit Sie den PostGIS-Geometrietyp verwenden können. Weitere Informationen finden Sie in der PostgreSQL-Dokumentation. |
|
GLOBAL ID | VARCHAR(38) | Wird nur in Geodatabases unterstützt. | |
GUID |
VARCHAR(38) |
||
LONG INTEGER |
INTEGER |
SERIAL | |
OBJECT ID |
INTEGER in einer Geodatabase SERIAL in einer Datenbank |
Die ArcGIS-Typ-ObjektID ist die registrierte Zeilen-ID-Spalte für die Tabelle (oder Feature-Class). Pro Tabelle gibt es nur eine. |
|
RASTER |
BYTEA or ST_RASTER |
Raster werden nur in Geodatabases unterstützt. Der erstellte PostgreSQL-Datentyp hängt vom DBTUNE-Konfigurationsschlüsselwort ab, das beim Erstellen des Raster-Katalogs, Raster-Datasets oder Mosaik-Datasets verwendet wurde. Sie müssen den Typ "ST_Raster" in der Geodatabase getrennt konfigurieren, wenn Sie ihn verwenden möchten. Anweisungen finden Sie unter Installieren des ST_Raster-Typs unter PostgreSQL. |
|
SHORT INTEGER |
SMALLINT |
REAL | |
TEXT |
CHARACTER VARYING |
CHARACTER, VARCHAR, TEXT |
Wenn die Tabelle eine Spalte mit einem Datentyp enthält, der nicht in ArcGIS unterstützt wird, können Sie die Spalte in Text umwandeln. Dies sollte jedoch nur dann erfolgen, wenn Sie die Werte in der Spalte lediglich anzeigen möchten, keinesfalls, um Analysen anhand der Werte in dieser Spalte durchzuführen. Sie können z. B. eine SELECT-Anweisung ausführen, um die Spalten in "tableb" auszuwählen und die Dezimalspalte "total" in Text umzuwandeln:
SELECT id, name, total::text
FROM me.mydb.tableb;