El documento explica cómo crear una tabla geográfica en PostgreSQL, incluyendo la definición de campos, restricciones, verificación de la tabla, definición de accesos privilegiados y secuencias. Se comienza creando la tabla con el tipo de campo geométrico obligatorio y restricciones como la proyección y dimensión. Luego se verifica la tabla, se definen los permisos de usuario y por último se crean y asignan permisos a las secuencias relacionadas.
2. [CREACIÓN DE TABLAS GEOGRÁFICAS EN POSTGRESQL] 27 de marzo de 2014
D i r e c c i ó n d e T e c n o l o g í a y S i s t e m a s d e I n f o r m a c i ó n Página 2
ÍNDICE
Introducción……………………………………………pág. 3
Creación de la tabla………………………………………….pág. 3
Verificación de la tabla………………………………………pág. 5
Definición de accesos privilegiados…………………….pág. 5
Sequences…………………………………………………………..pág. 6
3. [CREACIÓN DE TABLAS GEOGRÁFICAS EN POSTGRESQL] 27 de marzo de 2014
D i r e c c i ó n d e T e c n o l o g í a y S i s t e m a s d e I n f o r m a c i ó n Página 3
INTRODUCCIÓN
A través de este instructivo se va a tratar de explicar cómo se crea una tabla geográfica de
datos en el PostgreSQL. Para ello necesitamos el programa pgAdmin III para crear la tabla
espacial y el Quantum GIS para comenzar a crear nuestras entidades con datos geográficos.
Programas necesarios:
CREACIÓN DE LA TABLA
Comenzaremos abriendo el pgAdmin III y dentro del mismo abrimos una consulta en el icono
SQL donde crearemos nuestra tabla
geográfica.
Una vez definido los campos y el tipo de dato que se va a ingresar en la tabla nueva
empezaremos creándola de la siguiente manera:
1. Donde “aux” es el esquema donde estará la tabla que crearemos y “polígono” es el
nombre que elegiremos para nuestra nueva tabla.
4. [CREACIÓN DE TABLAS GEOGRÁFICAS EN POSTGRESQL] 27 de marzo de 2014
D i r e c c i ó n d e T e c n o l o g í a y S i s t e m a s d e I n f o r m a c i ó n Página 4
2. En esta parte le pondremos el nombre de los campos y el tipo de dato que se ingresará
en cada campo. El campo the_geom es obligatorio para que la tabla sea geográfica.
3. CONSTRAINT sirve para ponerle restricciones a la tabla:
CONSTRAINT poligono_pkey1 PRIMARY KEY (gid ): se restringirá que el “gid” será
la llave primaria de nuestra tabla la cual se autoincrementará sólo cada vez que
creemos un nuevo registro.
CONSTRAINT enforce_dims_the_geom CHECK (st_ndims(the_geom) = 2): dónde se
restringirá que la dimensión de la geometría sea sólo en 2d.
CONSTRAINT enforce_geotype_the_geom CHECK (geometrytype(the_geom) =
'MULTIPOLYGON'::text OR the_geom IS NULL) : dónde se le restringirá el tipo de
geometría siendo sólo MULTIPOLYGON, POINT o LINE según lo que queramos
representar en el GIS.
CONSTRAINT enforce_srid_the_geom CHECK (st_srid(the_geom) = 22195): dónde
se le restringirá que la proyección de todos los registro que se creen sea la EPSG
22195.
Una vez establecido estos parámetros de nuestra tabla vamos al botón ejecutar y nos
dará el próximo resultado en el panel de salida de abajo:
Este mensaje nos mostrará que la tabla se ha creado con éxito con todas las
restricciones que hemos establecido.
5. [CREACIÓN DE TABLAS GEOGRÁFICAS EN POSTGRESQL] 27 de marzo de 2014
D i r e c c i ó n d e T e c n o l o g í a y S i s t e m a s d e I n f o r m a c i ó n Página 5
VERIFICACIÓN DE TABLA
Para verificar la tabla que
hemos creado vamos a nuestro
explorador de objetos y haciendo
click derecho sobre “Tables”
apretamos ‘refresh’ para refrescar
los datos y verficar que se hayan
creado con éxito.
Al refrescar veremos que se
ha sumado nuestra tabla al esquema elegido.
DEFINICIÓN DE ACCESOS PRIVILEGIADOS
Una vez verificado la creación de nuestra tabla volvemos a nuestra consulta en el
Query para definir los accesos privilegiados que serán los grupos de usuarios que
podrán seleccionar, insertar, actualizar, eliminar, truncar, etc.
En este caso llamaremos a la función GRANT y le daremos todos los privilegios de tabla
a los distintos tipos de usuarios que pongamos (esto podría variar según el usuario o
grupo de usuario).
Para empezar pondremos la consulta debajo de las otras como se muestra a
continuación:
6. [CREACIÓN DE TABLAS GEOGRÁFICAS EN POSTGRESQL] 27 de marzo de 2014
D i r e c c i ó n d e T e c n o l o g í a y S i s t e m a s d e I n f o r m a c i ó n Página 6
Donde GRANT ALL ON TABLE sería el acceso privilegiado para todo de la tabla y se
definirá también los grupos privilegiados como se muestra en la imagen.
Seleccionamos todo lo nuevo que se escribió y se ejecuta
SEQUENCES
Dentro del esquema elegido se crean los sequences que lo podemos ver en nuestro
esquema. Cada vez que creamos una tabla geográfica se crea un sequences y lo que
vamos a hacer es dar todos los permisos al rol depto_gis.
1. Dentro del esquema donde estamos trabajando nos dirigimos a sequences y
dentro de nuestro objeto elegimos el sequences que se creo que en nuestro caso
se llama “polígono_gid_seq” donde siempre guarda el nombre de nuestra tabla y
se le agrega lo demás.
7. [CREACIÓN DE TABLAS GEOGRÁFICAS EN POSTGRESQL] 27 de marzo de 2014
D i r e c c i ó n d e T e c n o l o g í a y S i s t e m a s d e I n f o r m a c i ó n Página 7
2. Nos paramos encima de nuestro sequences, hacemos click derecho sobre el
mismo y vamos a propiedades.
3. Dentro de las propiedades nos dirigimos a la solapa de “privileges”, y
seleccionamos el grupo dpto._gis, lo agregamos y le damos todos los privilegios.
Los pasos se muestran a continuación:
8. [CREACIÓN DE TABLAS GEOGRÁFICAS EN POSTGRESQL] 27 de marzo de 2014
D i r e c c i ó n d e T e c n o l o g í a y S i s t e m a s d e I n f o r m a c i ó n Página 8
4. Una vez que se realizan estos pasos nos dirigimos a la solapa “SQL”, copiamos el
sql que se creó y lo copiamos a nuestro query para completar los privilegios.
9. [CREACIÓN DE TABLAS GEOGRÁFICAS EN POSTGRESQL] 27 de marzo de 2014
D i r e c c i ó n d e T e c n o l o g í a y S i s t e m a s d e I n f o r m a c i ó n Página 9
De este modo damos por terminado todos los privilegios y permisos para editar una tabla.