Beim Erstellen einer Tabelle oder Hinzufügen einer Spalte zur Tabelle einer Datenbank definieren Sie einen bestimmten Datentyp für die Spalte. Durch Datentypen wird Folgendes festgelegt:
- Welche Werte in der Spalte gespeichert werden können
- Welche Operationen mit den Daten in dieser Spalte ausgeführt werden dürfen
- Wie die Daten aus dieser Spalte in der Datenbank gespeichert werden
ArcGIS verwendet bestimmte Datentypen. Wenn Sie über eine Datenbankverbindung, einen Abfrage-Layer oder einen Web-Service auf eine Datenbanktabelle zugreifen, filtert ArcGIS alle nicht unterstützten Datentypen heraus. In ArcGIS werden keine nicht unterstützten Datentypen angezeigt, und Sie können nicht unterstützte Datentypen nicht in ArcGIS bearbeiten. Wenn beispielsweise ArcGIS zum Kopieren und Einfügen von Tabellen, die nicht unterstützte Datentypen enthalten, von einer Datenbank in eine andere verwendet wird, fügt ArcGIS nur die Spalten ein, deren Datentyp unterstützt wird.
Die erste Spalte der folgenden Tabelle enthält die ArcGIS-Datentypen. In der zweiten Spalte sind die von ArcGIS erstellten SQL Server-Datentypen aufgeführt. In der dritten Spalte ist aufgelistet, welche weiteren SQL Server-Datentypen (sofern vorhanden) dem ArcGIS-Datentyp zugeordnet werden, wenn Sie eine Tabelle anzeigen, die außerhalb von ArcGIS erstellt (und nicht in der Geodatabase registriert) wurde. Die letzte Spalte enthält ggf. zusätzliche Informationen.
ArcGIS-Datentypen | Erstellte SQL Server-Datentypen | Andere SQL Server-Datentypen, die angezeigt werden können | Notizen |
---|---|---|---|
BLOB |
varbinary(max) | binary, image, timestamp, varbinary(n) | |
Datum |
datetime2(7) | date, datetime2(n), datetime, smalldatetime, time | |
Double |
numeric(p,s) | decimal, float, money, smallmoney | Die Genauigkeit und die Anzahl der Dezimalstellen, 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,s) | real | Die Genauigkeit und die Anzahl der Dezimalstellen, 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. |
Geometrie |
| Geben Sie an, ob "GEOMETRY" oder "GEOGRAPHY" beim Erstellen einer Feature-Class verwendet werden soll. Die folgenden Geometrie-Subtypes werden von ArcGIS nicht unterstützt:
Sie können in ArcGIS Pro keine Feature-Classes erstellen, die den Geometriespeichertyp "Compressed Binary" verwenden. Das Anzeigen entsprechender Feature-Classes in ArcGIS Pro ist jedoch möglich. Komprimierte Binärdaten werden in der Datenbank als Datentyp "INT" gespeichert. | |
Global ID | uniqueidentifier | Wird nur in Geodatabases unterstützt. | |
GUID |
uniqueidentifier | ||
Long Integer |
int | ||
Raster |
BLOB, int | Raster-Datentypen werden nur in Geodatabases unterstützt. Welcher SQL Server-Datentyp in Enterprise-Geodatabases erstellt wird, hängt vom Konfigurationsschlüsselwort ab, das beim Erstellen des Raster-Datasets oder Mosaik-Datasets verwendet wurde. Wenn der Parameter "RASTER_STORAGE" des Schlüsselworts auf "RASTERBLOB" eingestellt ist, wird eine BLOB-Spalte erstellt; wenn er auf "BINARY" eingestellt ist, wird eine int-Spalte erstellt. | |
OBJECT ID |
int(4) when created in an enterprise geodatabase integer with identity property when created in a database | Die ArcGIS-Typ-ObjektID ist die registrierte Zeilen-ID-Spalte für die Tabelle (oder Feature-Class). Pro Tabelle gibt es nur eine. | |
Short Integer |
smallint | bit, tinyint | |
Text |
varchar, nvarchar, varchar(max), nvarchar(max) | char, nchar |
Textdatentypen
Wenn Sie ein varchar- oder varchar(max)-Feld in einer SQL Server-Datenbank erstellen, wird es dem ArcGIS-Datentyp "TEXT" zugeordnet, wenn es in ArcGIS angezeigt wird. Wenn Sie ein Textfeld in einer SQL Server-Datenbank in ArcGIS erstellen, wird entweder "nvarchar" oder "nvarchar(max)" verwendet.
Wenn für den Konfigurationsparameter UNICODE_STRING in einer Enterprise-Geodatabase FALSE und für das Textfeld 7.999 Zeichen oder weniger festgelegt wurden, wird VARCHAR verwendet.
Wenn der Konfigurationsparameter UNICODE_STRING auf FALSE und das Textfeld auf 8.000 Zeichen oder mehr festgelegt sind, wird VARCHAR(MAX) verwendet.
Wenn der Konfigurationsparameter UNICODE_STRING auf TRUE und das Textfeld auf 3.999 Zeichen festgelegt sind, wird NVARCHAR verwendet.
Wenn der Konfigurationsparameter UNICODE_STRING auf TRUE und das Textfeld auf 4.000 Zeichen oder mehr festgelegt sind, wird NVARCHAR(MAX) verwendet.
Geometriedatentypen
Wie in der Tabelle angegeben, können von ArcGIS Pro zwei Geometriedatentypen in SQL Server erstellt und verwendet werden: SQL Server Geometry und SQL Server Geography.
SQL Server Geometry
Der nachfolgende Abschnitt enthält eine Zusammenfassung des Datentyps "GEOMETRY" von Microsoft. Weitere Informationen zum Datentyp "GEOMETRY" und seiner Verwendung finden Sie in der Microsoft SQL Server-Dokumentation.
- Der Datentyp GEOMETRY von Microsoft unterstützt jedes X/Y-Koordinatensystem.
- Planare (Ebene, euklidisch) Berechnungen und lineare Interpolation zwischen Stützpunkten werden zum Rendern und für räumliche Vergleiche verwendet.
- Entspricht Version 1.1.9 der Simple Features-Spezifikation von Open Geospatial Consortium, Inc. (OGC) und ist mit dem ISO SQL/MM-Standard konform.
SQL Server Geography
Der nachfolgende Abschnitt enthält eine Zusammenfassung des Datentyps "GEOGRAPHY" von Microsoft. Weitere Informationen zum Datentyp "GEOGRAPHY" und seiner Verwendung finden Sie in der Microsoft SQL Server-Dokumentation.
- Der Typ "GEOGRAPHY" unterstützt viele standardmäßige geographische Koordinatensysteme wie GPS-Längengrad und -Breitengrad.
Microsoft erfordert die Verwendung von SRIDs und die Definition des geographischen Koordinatensystems im SQL Server-Datenkatalog.
- Ein Ellipsoid-Modell (runde Erde) und die Interpolation einer großen Ellipse aus Liniensegmenten zwischen Stützpunkten wird für Berechnungen und räumliche Vergleiche verwendet.
- Der Typ "GEOGRAPHY" verwendet eine globale (kugelförmige) Layer-Ausdehnung.
Koordinaten der Daten können die globale Ausdehnung nicht überschreiten.
Raster-Datentypen
Der in Geodatabases in SQL Server standardmäßig verwendete Raster-Typ ist ein BLOB-Typ (rasterblob).