SQL を使用して、データベース内の version ジオデータベース システム テーブルを直接検索し、ジオデータベース リリースを特定できます。この方法で、ジオデータベースの作成またはアップグレードに使用される ArcGIS Pro のバージョンを特定することもできます。
ArcGIS Pro のバージョンが不要であり、ジオデータベース リリースに関する XML 情報を検索したい場合、それを実行することもできます。
version テーブルの検索
ジオデータベース リリースを特定するには、SQL を使用して version テーブル (Microsoft SQL Server および PostgreSQL では sde_version) を検索します。
リリース番号は、version テーブル内の複数のフィールドに格納されています。このテーブルは、メジャー バージョン、マイナー バージョン、およびバグ フィックス バージョンに加えて、完全なジオデータベース リリースを格納するフィールドを含んでいます。
メジャー バージョンは、ジオデータベースのメジャー リリースに対応しています。マイナー バージョンは、ArcGIS リリースのドット記号 (.) の右にある番号で指定されます。バグ フィックス バージョンは、サービス パック、パッチ、ホット フィックスをインストールしたときにジオデータベース スキーマが変化する場合、またはバグ フィックス リリースをインストールした場合に、増加します。たとえば、10.6.1 のメジャー バージョン番号は 10、マイナー バージョン番号は 6、バグ フィックス番号は 1 です。
ArcGIS Pro からジオデータベースを作成またはアップグレードした場合、description フィールドに、メジャー バージョン、マイナー バージョン、バグ フィックス バージョン、およびジオデータベースを作成またはアップグレードした ArcGIS Pro のバージョンの連結が表示されます。ArcGIS Pro からジオデータベースを作成またはアップグレードしなかった場合、description フィールドには、ArcGIS Pro のバージョン番号の代わりにゼロが表示されます。
完全なジオデータベース リリースを見つけるには、version テーブルの description 列を検索します。
-- 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;
XML ドキュメントを検索してジオデータベース リリースを決定する
特定のジオデータベースのリリースを確認するために、XML ドキュメントからリリース番号の値を抽出することができます。
リリース番号は、メジャー、マイナー、バグ フィックスの各バージョンとして格納されています。XML 内で、メジャー バージョンは、ジオデータベースのメジャー リリースに対応する数値コードです。ArcGIS 8 は ArcGIS のジオデータベース機能を含めるための最初のリリースだったため、ArcGIS 8 は メジャー バージョン 1 に対応します。ArcGIS 9 は メジャー バージョン 2 に対応し、ArcGIS 10 は メジャー バージョン 3 に対応します。
マイナー バージョンは、ArcGIS リリースのドット記号 (.) の右にある番号で指定されます。たとえば、10.6 のマイナー バージョン番号は 6 です。
バグ フィックス バージョンは、サービス パック、パッチ、ホット フィックスをインストールしたときにジオデータベース スキーマが変化する場合、またはバグ フィックス リリースをインストールした場合に、増加します。たとえば、10.6.1 のバグ フィックス バージョン番号は 1 です。
次のクエリは、ジオデータベースのメジャー、マイナー、バグ フィックスの各バージョン番号を取得しています。
-- 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;