Conéctese a la base de datos PostgreSQL usando Python

Jay Shaw 21 junio 2023
  1. Instalar PostgreSQL en el Sistema
  2. Cree un servidor de datos y una base de datos usando pgAdmin
  3. Pasos para conectar la base de datos PostgreSQL a Python
  4. Crear archivo de configuración (.ini) que almacena la información del servidor
  5. Crear un archivo de Python que analice el archivo de configuración
  6. Pasos para conectarse a la base de datos PostgreSQL
  7. Conclusión
Conéctese a la base de datos PostgreSQL usando Python

Este artículo explica el procedimiento para crear una conexión a bases de datos que se realizan en PostgreSQL. Necesitamos requisitos previos como instalar PostgreSQL y crear una base de datos, como se explica a continuación.

Instalar PostgreSQL en el Sistema

Como sugiere el nombre, PostgreSQL es un software de sistema SQL creado para administrar de manera eficiente los sistemas de bases de datos.

Es necesario crear una base de datos antes de poder conectarla a Python. Postgres, implementarlo.

La confusión persiste en muchos principiantes que comienzan a aprender el desarrollo de bases de datos. Se percibe que la base de datos se crea utilizando pgAdmin y no PostgreSQL.

En realidad, el primero administra las bases de datos, mientras que el segundo es el marco sobre el que se construye.

pgAdmin debe estar vinculado con PostgreSQL antes de que se pueda crear una base de datos. Entonces, al principio, se necesita instalar PostgreSQL.

El paquete de instalación de Postgres se puede encontrar en la sección de descargas del sitio web oficial de PostgreSQL. El usuario puede entonces descargar e instalar la aplicación desde allí.

Hay varios instaladores disponibles para sistemas operativos como Mac, Linux y Windows.

Los usuarios también pueden obtener el código fuente y compilar e instalar manualmente pgAdmin4 en su PC.

pgAdmin es una herramienta eficiente para administrar bases de datos que funcionan en PostgreSQL. Los archivos descargables como el instalador se pueden encontrar en la página web en línea de la aplicación.

Uno puede elegir de una lista de todas las versiones estables de pgAdmin y otras distribuciones de paquetes de instalación que eran similares al proceso de PostgreSQL.

Una vez que pgAdmin está instalado en el sistema, se pueden crear bases de datos.

Cree un servidor de datos y una base de datos usando pgAdmin

Esta sección contiene dos subsecciones. La primera sección explica cómo crear servidores de datos, mientras que la segunda se centra en las bases de datos.

Crear un servidor de datos en pgAdmin

Antes de que se cree cualquier base de datos, pgAdmin debe configurarse correctamente. Un aviso solicita una contraseña maestra que se usará cuando se cree o se acceda a una nueva base de datos.

La página web de pgAdmin aparece cuando se proporciona la contraseña. Se debe construir un nuevo servidor para generar una nueva base de datos.

El botón Agregar nuevo servidor crea una ventana de diálogo donde se puede construir un nuevo servidor.

Agregar nuevo servidor en pgAdmin

La ventana que se muestra al principio proporciona las funcionalidades del servidor que se está configurando. En este artículo, algunos de ellos se proporcionarán con la entrada del usuario, mientras que otros son generados por el sistema y se dejarán como están.

Al principio, se requiere el nombre del servidor. Después de eso, dirígete al menú conexión.

Allí se requiere el Nombre de host, generalmente localhost. El puerto debe configurarse en 5432.

Seguir los puntos anteriores es suficiente para crear un servidor de datos útil.

Crear base de datos en pgAdmin

Una vez que el servidor de datos está funcionando, se pueden crear bases de datos. Los servidores creados se muestran en el lado izquierdo de la ventana de la aplicación, conocida como su tablero.

Hay un ícono desplegable dentro del panel lateral izquierdo al lado del nombre del servidor. Aparece un cuadro de diálogo de contraseña cuando se hace clic en este icono, solicitando la contraseña maestra del sistema.

Ingrese la contraseña maestra en pgAdmin

Un menú muestra todos los servidores que se crean dentro del sistema. Permanece desactivado hasta que se activa con un clic seguido de una solicitud de contraseña.

Haga clic con el botón derecho en el área Bases de datos y seleccione crear. Asigne un nombre a la base de datos y seleccione postgres dentro de la sección de propietario; luego, se debe establecer la definición de la base de datos.

La definición de una base de datos tiene múltiples opciones para configurar. Las siguientes son algunas de las opciones más esenciales entre las muchas disponibles.

  1. La Codificación debe configurarse en - UTF - 8.
  2. Plantilla debe establecerse en Postgres.
  3. Tablespace debe establecerse en pg_default.

Collation y Character type deben configurarse como están, mientras que el límite de conexión se establece en -1. Dirigirse al menú etiquetado sql le dará una descripción general de la consulta utilizada aquí.

Al hacer clic en guardar se creará una base de datos.

Pasos para conectar la base de datos PostgreSQL a Python

Conectarse a una base de datos usando Python es un proceso de tres pasos. Al principio, la información del servidor se almacena en un archivo de configuración.

Se crea un archivo de Python que analiza el archivo de configuración (.ini) y carga el servidor en el siguiente paso. En el paso final, se crea un archivo de Python que conecta la base de datos.

En este artículo, el programa utiliza el paquete de importación psycopg2 para conectarse a una base de datos PostgreSQL, obtener la versión de la base de datos y luego imprimirla.

Crear archivo de configuración (.ini) que almacena la información del servidor

Este archivo almacena los detalles relacionados con el servidor, lo que ayuda al archivo config.py a configurar la base de datos. El encabezado del archivo, que declara el RDBMS utilizado, se encuentra en la parte superior del archivo.

  1. host: aquí se proporciona el host o el servidor utilizado.
  2. base de datos: aquí se proporciona la base de datos específica a la que debe dirigirse.
  3. usuario: el usuario se debe dar como postgres, ya que es el RDBMS.
  4. contraseña: aquí se debe ingresar la contraseña maestra proporcionada en pgAdmin al crear la base de datos.

Información del servidor

Una vez que se crea el archivo de información, se puede usar dentro del archivo de configuración.

Crear un archivo de Python que analice el archivo de configuración

Este programa utiliza el paquete de importación configparser. Un método config se declara con dos parámetros, filename y section.

Se inicializa una variable parser que lee el archivo desde la variable filename.

A continuación se muestra el método get que extrae elementos de la base de datos. La sección get se coloca dentro de una declaración if-else, donde el método else maneja la excepción.

Finalmente, se devuelve la variable base de datos.

from configparser import ConfigParser


def config(filename="server_info.ini", section="postgresql"):
    parser = ConfigParser()
    parser.read(filename)

    database = {}
    if parser.has_section(section):
        params = parser.items(section)
        for param in params:
            database[param[0]] = param[1]

    else:
        raise Exception(
            "Section {0} not found in the {1} file".format(section, filename)
        )

    return database

Pasos para conectarse a la base de datos PostgreSQL

El programa tiene dos archivos de importación.

  1. psycopg2
  2. configuración

Se crea un método conectar que se conecta al servidor de base de datos PostgreSQL.

Se declara una variable param que se utiliza para leer los parámetros de la conexión. Estos parámetros se utilizan para conectarse al servidor de la base de datos.

La sintaxis psycopg2.connect(**params) carga los parámetros de conexión y se conecta al servidor de la base de datos. Se declara otra variable, var_cur, que se utiliza para almacenar el cursor creado por la sintaxis connection.cursor.

La versión de PostgreSQL para la base de datos se muestra después de realizar la conexión. var_cur.execute ejecuta la sentencia SELECT version().

La versión se carga en la variable version_of_database, que luego se muestra mediante la función fetchone(), que recupera elementos individuales a la vez. A continuación, se imprime la variable.

Después de obtener la versión de la base de datos, el cursor se cierra usando var_cur.close().

Se agrega un bloque de manejo de excepciones para generar excepciones de error. Dentro del bloque excepto, el programa imprime un mensaje de error cuando no se puede establecer conexión con la base de datos o si no se encuentra la base de datos.

Al final del manejo de excepciones, se agrega un bloque finalmente que cierra la conexión usando la sintaxis conexión.cerrar(). Una vez cerrada la conexión, la base de datos imprime un mensaje que confirma que la conexión está cerrada.

Por último, se llama al método conexión.

import psycopg2
from config import config


def connect():
    connection = None
    try:
        params = config()

        print("Connection made to the postgresql database")
        connection = psycopg2.connect(**params)

        var_cur = connection.cursor()

        print("Database version is - ")
        var_cur.execute("SELECT version()")

        version_of_database = var_cur.fetchone()
        print(version_of_database)

        var_cur.close()
    except (Exception, psycopg2.DatabaseError) as error:
        print(error)
    finally:
        if connection is not None:
            connection.close()
            print("Database connection closed.")


if __name__ == "__main__":
    connect()

Producción:

Conéctese a la base de datos PostgreSQL usando Python

Conclusión

Este artículo trata sobre la creación de bases de datos y explica cómo se crean las bases de datos en PostgreSQL. Las diferentes funcionalidades de la herramienta de software pgAdmin.

El lector aprende cómo conectar una base de datos utilizando Python de manera detallada para que este aprendizaje pueda ser recogido rápidamente y utilizado en proyectos de la vida real.