Cómo conectar nuestros proyectos Python con bases de datos

Diagrama base de datos

Python es hoy en día el lenguaje de programación más popular. Inteligencia Artificial, Ciencia de Datos, Análisis de datos y estadísticas, son algunos de sus ámbitos de aplicación más populares.

Está claro que para aprovechar al máximo la mayoría de sus aplicaciones más buscadas hay un factor común: el manejo de datos.

En este artículos explicaré cómo conectar nuestros proyectos Python a bases de datos. Pero primero necesitamos un poco de información sobre las diversas bases de datos.

Qué necesitamos para comenzar

Lo básico para comenzar con un proyecto Python y conectarlo a una base de datos son tres cosas:

  • Python.
  • El paquete que nos permite acceder a la base de datos.
  • El motor o sistema de base de datos elegido.

Todos estos ítems podríamos tenerlos instalados en nuestro equipo, en una red local o acceder a ellos a través de servicios cloud.

Si deseamos comenzar con Python, instalarlo en nuestro equipo y escribir nuestras primeras líneas, podemos seguir la siguiente guía: ¿Qué es Python? Introducción.

El paquete que conecta Python con la base de datos dependerá de la base de datos elegida, lo mismo que el servicio que utilicemos para nuestra base de datos. Sobre esto profundizaremos a continuación.

Las diferentes bases de datos

Existen diversos tipos de bases de datos. Pero como no es objeto de este artículo profundizar sobre el tema, me centraré en los dos modelos que suelo explicar en mis capacitaciones: bases de datos relacionales y no relacionales (NoSQL).

Las bases de datos relacionales enfocan su modelo en tablas relacionadas por campos. Uno de los motores más populares de este modelo es MySQL, para el cual deberíamos dominar SQL como lenguaje de consulta.

En el mundo de bases NoSQL encontramos gran variedad. Uno de los sistemas de bases de datos que más he manejado y que empleo en mis capacitaciones es MongoDB. En este caso es importante conocer en profundidad el formato JSON para interactuar con los datos.

Conectar Python con una base MySQL

Para este caso debemos instalar el paquete de conexión en nuestro proyecto.

En mi caso utilizo pymysql: https://pypi.org/project/pymysql/.

La instalación básica se puede realizar mediante PIP con el comando: pip install pymysql

Luego se importa en nuestro proyecto Python con la línea: import pymysql

Para establecer la conexión se emplea el método pymysql.connect y se le pasan como parámetros: host, usuario, contraseña y base de datos.

A partir de ahí podremos realizar nuestras operaciones con la base de datos.

Conectar Python con una base de datos MongoDB

En este caso podemos recurrir al paquete PyMongo: https://pypi.org/project/pymongo/.

La instalación de este paquete mediante PIP se realiza con el siguiente comando: pip install pymongo.

En nuestro proyecto incorporamos el driver con la siguiente línea: import pymongo

Para conectarnos a la base de datos (ejemplo con una conexión local): myclient = pymongo.MongoClient(«mongodb://localhost:27017/»)

Consideraciones finales

Este artículo solo abarca los aspectos básicos de conexión e implementación de bases de datos con Python. Es importante señalar que es recomendable organizar toda la gestión de paquetes cuando tenemos varios proyectos en nuestro equipo. Por esta razón, el uso de virtual environments en Python puede ser muy importante para una gestión organizada de los proyectos.

En este mismo sentido, vale la pena resaltar que es fundamental instrumentar todos los mecanismos de seguridad recomendados para fortalecer la seguridad y privacidad de los accesos y los datos guardados en bases de datos.

Más sobre Diseño y desarrollo Web


Acerca de

Autor de los libros: Webmaster Profesional, HTML5: Comprenda el cambio y Apps HTML5 para móviles. Soy especialista en Desarrollo Web. Realizo proyectos basados en Inteligencia Artificial. Colaboré como autor y editor de contenidos para revistas, colecciones y diversos medios impresos y digitales. Brindo capacitaciones, clases de formación y consultorías sobre lenguajes de programación y herramientas para Desarrollo Web y móvil en modalidad online y presencial.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*