Ejemplo: Crear una vista espacial en SQL Server con SQL

Complejidad: Principante Requisito de datos: Utilizar datos propios

Puede utilizar SQL para crear una vista espacial al incluir la columna espacial en la definición de la vista. Debe hacer esto para poder ver las entidades en ArcMap. Además, puede crear una vista espacial que le permita utilizar una tabla que contenga más de una columna espacial; la vista espacial solo incluiría una columna espacial para que pueda utilizarla con ArcGIS.

En este ejemplo, se crea una vista espacial para unir datos de la tabla de empleados y la clase de entidad regiones.

Crear una vista con una columna espacial

Defina la vista para incluir la columna espacial y el ObjectID de la clase de entidad junto con otras columnas de atributos que desee en la vista.

El propietario de la tabla de empleados y la clase de entidad región es el usuario gdb; por lo tanto, este ya tiene los privilegios necesarios para crear la vista.

SugerenciaSugerencia:

Para crear una vista, el usuario debe tener por lo menos privilegios SELECT en cada tabla o clase de entidad incluidos en la vista, además del privilegio CREATE VIEW en la base de datos.

USE testdb;  CREATE VIEW emp_region_vw 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

El reg_id es la columna ObjectID de enteros no nula de la clase de entidad regiones. Región es la columna espacial de la clase de entidad regiones. Las tablas se unen basadas en la columna emp_id.

Otorgar privilegios en la vista espacial

Una vez que existe la vista, otorgue privilegios SELECT al inicio de sesión del dominio ptolemy. Incluya WITH GRANT OPTION para permitir que el usuario ptolemy otorgue privilegios en la vista a otros usuarios.

USE testdb;  GRANT SELECT  ON emp.region.vw  TO [ourdomain\ptolemy] WITH GRANT OPTION;  GO
SugerenciaSugerencia:

El inicio de sesión del domino ptolemy se debe agregar a la instancia de SQL Server y a la base de datos de testdb antes de que pueda otorgarle privilegios.

9/11/2013