SQL を使用してビューを作成し、ビュー定義に空間列を含めることができます。空間ビューを作成すると、ArcMap でフィーチャを表示できます。また、空間ビューを作成すると、複数の空間列を含むテーブルを使用することもできます。空間ビューには、1 つの空間列だけが含まれるため、ArcGIS で使用することができます。
この例では、employees テーブルと region フィーチャクラスを結合する空間ビューを作成します。
空間列を持つビューの作成
フィーチャクラスの空間列および ObjectID の両方と、ビューに含めるその他の属性列を含むように、ビューを定義します。
employees テーブルと region フィーチャクラスの所有者は gdb ユーザーであるため、ユーザーはビューの作成に必要な権限をすでに持っています。
USE testdb;
CREATE VIEW emp_region_view
AS
SELECT e.emp_name, e.emp_id, r.rname, r.reg_id, r.region
FROM employees e
JOIN region r
ON e.emp_id = r.emp_id;
GO
reg_id は、region フィーチャクラスの NULL ではない整数の ObjectID 列です。region は、region フィーチャクラスの空間列です。テーブルは、emp_id 列に基づいて結合されます。
空間ビューに対する権限の付与
これでビューが存在するので、ptolemy ドメイン ログインに SELECT 権限を付与します。
USE testdb;
GRANT SELECT
ON emp.region.view
TO [ourdomain\ptolemy];
GO