Wenn Sie die Version der Geodatabase ermitteln möchten, können Sie direkt in der Geodatabase-Systemtabelle "version" der Datenbank eine SQL-Abfrage ausführen. Damit finden Sie zudem die ArcGIS Pro-Version heraus, die für die Erstellung oder Aktualisierung der Geodatabase verwendet wurde.
Auch wenn Sie die ArcGIS Pro-Version nicht benötigen, können Sie die XML-Informationen in der Geodatabase-Version abfragen.
Ausführen einer Abfrage in der Tabelle "version"
Führen Sie zur Ermittlung der Geodatabase-Version eine SQL-Abfrage in der Tabelle "version" (bzw. in Microsoft SQL Server und PostgreSQL in der Tabelle "sde_version") aus.
Die Versionsnummern befinden sich in mehreren Feldern der Tabelle "version". Diese Tabelle enthält Haupt-, Neben- und Bugfix-Versionen und Felder mit der vollständigen Geodatabase-Version.
Die Hauptversion entspricht der Hauptversion der Geodatabase. Die Nebenversion wird in der ArcGIS-Version mit der Zahl rechts des Punkts (.) bezeichnet. Die Nummer der Bugfix-Version erhöht sich nach der Installation von Service Packs, Patches oder Hotfixes, die zu Änderungen am Geodatabase-Schema führen, oder nach der Installation einer Bugfix-Version. In Version 10.6.1 kennzeichnet zum Beispiel 10 die Hauptversion, 6 die Nebenversion und 1 die Bugfix-Version.
Wenn Sie die Geodatabase in ArcGIS Pro erstellen oder aktualisieren, enthält das Feld "description" eine Verbindung aus Haupt-, Neben- und Bugfix-Version und der ArcGIS Pro-Version, die Grundlage für die Erstellung oder Aktualisierung der Geodatabase war. Ohne Erstellung oder Aktualisierung der Geodatabase in ArcGIS Pro enthält das Feld "description" anstelle einer ArcGIS Pro-Versionsnummer den Wert Null.
Wenn Sie die vollständige Geodatabase-Version ermitteln möchten, führen Sie eine Abfrage in der Spalte "description" der Tabelle "version" durch.
-- Queries an sde-schema geodatabase in SQL Server
-- Returns the geodatabase release from the sde_version table.
SELECT Description AS "Geodatabase release"
FROM sde.sde_version
-- Queries a geodatabase in PostgreSQL
-- Returns the geodatabase release from the sde_version table.
SELECT description AS "Geodatabase release"
FROM sde.sde_version;
-- Queries a geodatabase in Oracle
-- Returns the geodatabase release from the version table.
SELECT DESCRIPTION AS "Geodatabase release"
FROM sde.version;
Ermitteln der Geodatabase-Version mit einer Abfrage in einem XML-Dokument
Sie können die Versionsnummern einer bestimmten Geodatabase mithilfe eines XML-Dokuments ermitteln.
Die Nummern werden als Haupt-, Neben- und Bugfix-Versionen gespeichert. In XML ist die Hauptversion ein numerischer Code, der der Hauptversion der Geodatabase entspricht. ArcGIS 8 ist die erste ArcGIS-Version mit Geodatabase-Funktion und entspricht daher der Hauptversion 1. ArcGIS 9 entspricht der Hauptversion 2, ArcGIS 10 der Hauptversion 3.
Die Nebenversion wird in der ArcGIS-Version mit der Zahl rechts des Punkts (.) bezeichnet. Zum Beispiel ist 6 die Nebenversion von Version 10.6.
Die Nummer der Bugfix-Version erhöht sich nach der Installation von Service Packs, Patches oder Hotfixes, die zu Änderungen am Geodatabase-Schema führen, oder nach der Installation einer Bugfix-Version. Zum Beispiel ist 1 die Bugfix-Version von Version 10.6.
Mit den folgenden Abfragen lassen sich die Haupt-, Neben- und Bugfix-Versionen einer Geodatabase ermitteln:
-- Queries a dbo-schema geodatabase in SQL Server
-- Gets the geodatabase release from the workspace catalog item.
SELECT
Definition.value('(/DEWorkspace/MajorVersion)[1]', 'smallint') AS "Major version",
Definition.value('(/DEWorkspace/MinorVersion)[1]', 'smallint') AS "Minor version",
Definition.value('(/DEWorkspace/BugfixVersion)[1]', 'smallint') AS "Bug fix version"
FROM
dbo.gdb_items AS items INNER JOIN
(SELECT UUID
FROM dbo.gdb_itemtypes
WHERE Name = 'Workspace') AS itemtypes
ON items.Type = itemtypes.UUID
-- Queries PostgreSQL
-- Gets the geodatabase release from the workspace catalog item.
SELECT (xpath('//MajorVersion/text()',definition))::text as "Major version", (xpath('//MinorVersion/text()',definition))::text as "Minor version", (xpath('//BugfixVersion/text()',definition))::text as "Bug fix version"
FROM sde.gdb_items AS items INNER JOIN (SELECT uuid FROM sde.gdb_itemtypes WHERE name = 'Workspace') AS itemtypes
ON items.type = itemtypes.uuid;
-- Queries Oracle
-- Gets the geodatabase release from the workspace catalog item.
SELECT
EXTRACTVALUE(XMLType(Definition), '/DEWorkspace/MajorVersion') AS "Major version",
EXTRACTVALUE(XMLType(Definition), '/DEWorkspace/MinorVersion') AS "Minor version",
EXTRACTVALUE(XMLType(Definition), '/DEWorkspace/BugfixVersion') AS "Bug fix version"
FROM
sde.gdb_items_vw items INNER JOIN
(SELECT UUID
FROM sde.gdb_itemtypes
WHERE Name = 'Workspace') itemtypes
ON items.Type = itemtypes.UUID;