Este artículo constituye la continuación de Débuter avec Postgres/Postgis. Ahora desarrollaremos la introducción a la administración de las bases de datos Postgresql / postgis, cargando un shapefile y conectando y cargando la capa Postgis desde QGis.
La forma más conveniente de administrar las bases de datos PostgreSQL es utilizar la GUI pgAdmin4.
Esta herramienta se instala automáticamente durante la instalación de PostgreSQL. Puedes ejecutarla desde la barra de programas:
Para los fines de este artículo, cargar un archivo shape como Postgis en su nueva base de datos, realmente no necesita operaciones de administración. Pero es más fácil entender la operación siguiendo los cambios en la base de datos.
Pero tenga la seguridad de que no tendrá nada que crear por el momento. En el momento de la instalación de Postgis, solicitamos la creación de una base de datos de muestra. Esta es la base que usaremos en el resto del artículo.
pgAdmin4 le permite administrar una base de datos PostgreSQL / Postgis sin preocuparse por la sintaxis SQL correspondiente.
Cuando inicia la aplicación, la primera pantalla le permite conectarse al servidor y a la base de datos deseados.
Al cliquear en el botón derecho en un elemento, se abre el menú contextual que propone las diferentes operaciones posibles para este elemento.
En el momento de la instalación, creamos automáticamente dos bases de datos:
- una base de datos PostgreSQL clásica llamada postgres
- una base de datos PostgreSQL / Postgis llamada postgis_24_sample
Es esta segunda que usaremos para cargar un shapefile. Pero antes, aprovecha la oportunidad para echar un vistazo y ver cuáles son las diferencias entre estas dos bases.
Si observas las extensiones de cada una de ellas, encontrarás que la base de datos de Postgis tiene una serie de extensiones específicas que se pueden usar para administrar información espacial. La presencia de estas extensiones posibilita que una base de datos PostgreSQL sea una base de datos Postgres / Postgis.
Cuando creas una base de datos, debes agregar estas extensiones para que se pueda utilizar con Postgis.
Cliqueando con el botón derecho en extensiones y Crear – > Extensión , tendrás la lista de las extensiones disponibles .
Agregar un shapefile a una base de datos de Postgis.
Antes que nada, ¿qué significa agregar un shapefile a una base de datos Postgis? Un shapefile es en realidad un grupo de archivos con el mismo nombre y diferentes extensiones. Por ejemplo:
Todos estos archivos constituyen el «shapefile» ouessantCLC_L93. Un archivo contiene las geometrías, otro los datos de atributos, etc.
La información contenida en los archivos se cargará como una tabla en la base de datos. Solo una tabla contendrá toda la información dispersa en los archivos shapefile.
Verás en la imagen anterior en qué nivel se almacenarán los datos, y notarás que el nivel «Tablas» es un subnivel de un «Esquema», que a su vez es un subnivel de «Base de datos». Al cargar el shapefile tendras que determinar que base de datos y, posiblemente, qué esquema se debe utilizar.
En nuestra base de datos de ejemplo, hay un esquema «público» que, a diferencia de los otros esquemas presentes, tiene todas las funciones (1454). Dejaremos este concepto para más adelante. Solo recordemos que agregamos funciones a un esquema cuando es necesario. En nuestro ejemplo, todas las funciones ya están cargadas. Esto evita tener que realizar operaciones adicionales.
Podemos cargar el shapefile con el programa «Postgis 2.0 Shapefile y DBF Loader».
Puedes iniciarlo como una aplicación independiente, desde la barra de programas de Windows:
A diferencia de pgAdmin III, no encontrarás un botón en pgAdmin 4 para iniciar esta aplicación.
La ventana de la aplicación se abre:
Primero debes establecer la conexión con tu base de datos
Cliquea en « Agregar archivo » y navega para seleccionar el archivo shape a cargar. Cliquear Abrir , la información del archivo que se cargará aparecerá en la lista de importación.
¡Listo! Está hecho. Ahora puedes ver en tu consola pgAdmin 4 (después de actualizar la pantalla) tu tabla importada
Completar el sistema de coordenadas
Tal vez hayas notado en la ventana Lista de Importación que el SRID (sistema de coordenadas) está en cero. Esto indica que el cargador no pudo interpretar correctamente el archivo .prj del shapefile. En nuestro caso, debería ser 2154 (Lambert 93 EPSG code / RGF93).
Actualizaremos la información en la columna de geometría de la tabla que creamos.
Abre la ventana de SQL de pgAdmin 4:
En la ventana Editar SQL, escribe la siguiente consulta:
SELECT UpdateGeometrySRID(‘ouessantclc_l93′,’geom’,2154);
Cambia solo el nombre de la tabla (ouessantclc_l93) por el nombre de tu tabla y el código de la SRID (2154) por el código EPSG de tu sistema de coordenadas.
Realiza la consulta cliqueando en el botón Ejecutar (indicado por la flecha azul en la imagen).
Recibirás un mensaje que indica que la solicitud se ha realizado correctamente:
Cargar la capa Postgis en QGis
Para asegurarse de que todo ha transcurrido sin problemas, abre QGis y selecciona el botón de carga de una capa Postgis
La ventana de inicio de sesión se abre. La primera vez que te conectas a una base de datos debes configurar tu conexión.
Cliquea en « Nueva » y completa la información de inicio de sesión.
Tienes todo lo que necesitas en la ventana de la consola pgAdmin 4. En el nivel del Servidor, cliquea derecho en «PostgreSQL 10» – > Properties, tendrás toda la información necesaria: Host y Port . El Nombre solo se usa para mostrar el menú desplegable de conexiones. Puedes ingresar cualquier nombre. Servicio < strong> déjalo en blanco.
La base de datos donde cargaste el shapefile es «postgis_24_sample».
Debes ingresar el nombre de usuario: utilizaremos por el momento «postgres» y la contraseña que definiste para este usuario en el momento de la instalación.
Cliquea en Probar conexión </ em> para asegurarte de que se ingresa toda la información y luego cliquea en Aceptar.
La nueva conexión se agrega a la lista. Cliquea en « Conectar «. Tendrás los diferentes Esquemas disponibles y en cada uno la lista de tablas espaciales:
Selecciona la línea correspondiente a la capa cargada con el esquema Público y cliquea en el botón Agregar .
Aparece la ventana de definición del sistema de coordenadas. Selecciona el SRC de los datos (en este ejemplo, Lambert 93)
Ahora puedes trabajar en esta capa como en cualquier otra capa a la que estabas acostumbrado (visualización, simbología, actualización geométrica o atributo, …)
*
Intente hacerlo con archivos que descargue de internet, jejeje sera que puedas publicar el archivo de prueba que utilizaste???
El archivo puedes descargarlo en la dirección siguiente:
http://www.nasca.ovh/downloads/ouessant.zip
Si no logras el mismo resultado que en el artículo, dime qué es lo que no funciona.
gracias muy amable
En mi trabajo hay instalado Postgresql en un ordenador que funciona como servidor. Yo he considerado que dejando encendido el ordenador y el router podría acceder a la base y ejecutar consultas o ingresar información desde mi casa.
Alguien sabe si esto es posible o requiero tener otra forma de acceso???
Gracias
Debes configurar la autorizacion de acceso a distancia en el archivo pg_hba.conf.
https://www.postgresql.org/docs/current/auth-pg-hba-conf.html
hola estoy intentado consultar ¿Cuántos arcos de curvas de nivel tengo en una la tabla de altimétría?
y no se puede.,
Quizás no entienda bien la pregunta, pero si lo que’ deseas es saber cuantas líneas tiene tu tabla el comando sql es «select count(*) from tabla»
Si tu problema es otro, dame un poco mas de detalles