Пример. Создание пространственного представления в PostgreSQL с помощью SQL

Уровень сложности: Начальный Требования к данным: Используйте собственные данные

Чтобы создать пространственное представление посредством включения пространственного столбца в определение представления, можно использовать SQL. Это можно сделать для просмотра объектов в ArcMap. Также может потребоваться создание пространственного представления для использования таблицы, содержащей несколько пространственных столбцов. Пространственное представление будет содержать только один пространственный столбец для использования в ArcGIS.

В данном примере пространственное представление создается для объединения данных из таблицы employees и класса пространственных объектов region.

Создание представления с пространственным столбцом.

Необходимо определить представление, добавив в него пространственный столбец и идентификатор ObjectID из класса пространственных объектов, а также другие необходимые столбцы атрибутов.

Владельцем таблицы employees и класса пространственных объектов region является пользователь gdb. В связи с этим, у пользователя уже имеются необходимые права доступа для создания вида.

ПодсказкаПодсказка:

Для создания представления пользователь должен иметь права доступа не ниже SELECT для каждой таблицы или класса пространственных объектов, входящих в представление.

psql testdb gdb
Enter password for user gdb:

CREATE VIEW emp_region_view
AS SELECT (
	employees.emp_name,employees.emp_id,
	hbear.region.rname,
	hbear.region.reg_id,
	hbear.region.region)
	FROM employees, hbear.regions
	WHERE employees.emp_id = hbear.regions.emp_id;

Столбец reg_id - столбец, в котором недопустимо отсутствие значения (null). В нем хранятся целочисленные значения столбца ObjectID из класса пространственных объектов region. Region является пространственным столбцом класса пространственных объектов region. Эти таблицы объединяются по столбцу emp_id.

Предоставление прав доступа для пространственного представления

После создания представления необходимо предоставить права доступа SELECT пользователю dispatch_mgr. Параметр WITH GRANT OPTION позволит пользователю dispatch_mgr передавать права доступа к виду другим пользователям, группам или ролям.

GRANT SELECT 
ON gdb.emp_region_view
TO dispatch_mgr WITH GRANT OPTION;
5/10/2014