Conectar Python con mySql
Python
,MySQL
Publicado el 7 de Marzo del 2019 por Santiago
2.548 visualizaciones desde el 7 de Marzo del 2019
En esta ocasión trabajamos con la versión de Python 3.x (v 3.7 para ser mas exacto )
Antes que nada tenemos que tener Python instalado, si no lo tienes puedes descargarlo desde su pagina oficial : https://www.python.org/downloads/
Luego necesitaremos un conector para mySql, que es el que nos permitirá conectarnos con mySql dependiendo tu sistema operativo debes descargar el de 32 o 64 bit, aquí te dejo el enlace para descargarlo: https://dev.mysql.com/downloads/connector/python/
Una ves instalados el conector mySql, procedemos a la codificación en Python.
Importar el conector de mySql para pyhton de esta forma:
Crear una variable y almacena la información de tu conexión:
(En este caso lo realice mediante diccionario)
utilizamos como servidor local el "localhost" , como usuario "root",como contraseña: ""(ninguna pues no necesitamos una en este caso) por lo que debes de poner las comillas dobles vacías, sin espacio y por ultimo la base de datos(database) que en este caso es el nombre de tu base de datos que has creado en tu gestor de mySql.
Realizamos la conexión e instanciamos el objeto "conexion" con su método cursor, que a su vez obtenemos otro objeto al que le llamamos por convención "cursor".
(cursor se encarga de hacer los recorridos en las tablas,vistas o procedimientos que tengas en tu base de datos )
Ahora ya estamos listo, procedemos a realizar una inserción ,eliminación y actualización en la base de datos que vinculaste en el 2do paso.
Para insertar datos en una tabla de la base de dados seria así:
(por cierto no entro en detalles de la sentencia sql porque asumo que ya conoces esto.)
El execute es para aplicar o ejecutar la inserción en la base de datos y commit es para confirmar la inserción.
Para el proceso de eliminación y actualización en la tabla de la base de datos podremos decir que son los mismos pasos solo cambiaría la sentencia sql
(te reto a que puedas probarlo)
Y como ultimo paso, nos enfocamos en la consulta que trata de obtener la información de la base de datos, para esto utilizamos la siguiente codificación:
El fetchall recupera todos el conjunto de datos activo, o sea contiene todas las tuplas de nuestra tabla respecto a la sentencia sql, en un array con el cual con un ciclo for podemos hacer el recorrido y obtener la información de nuestra tabla en la base de datos.
A por cierto no olvides cerrar la base de datos cada vez que realices una inserción,eliminación,actualización o consulta .ya que si lo mantienes abierta ocupara recursos innecesarios en la Ram.
Cerramos de esta forma:
Cerramos el cursor y luego la conexión a la base de datos.
Bueno eso es todo, espero que te haya servido y sea de utilidad para tus proyectos o actividades en la que estés desarrollando o vayas a desarrollar a futuro,no te olvides calificar el tema, cualquier cosa lo haces saber . Saludos!
SAG
Antes que nada tenemos que tener Python instalado, si no lo tienes puedes descargarlo desde su pagina oficial : https://www.python.org/downloads/
Luego necesitaremos un conector para mySql, que es el que nos permitirá conectarnos con mySql dependiendo tu sistema operativo debes descargar el de 32 o 64 bit, aquí te dejo el enlace para descargarlo: https://dev.mysql.com/downloads/connector/python/
Una ves instalados el conector mySql, procedemos a la codificación en Python.
1er Paso
Importar el conector de mySql para pyhton de esta forma:
1
import mysql.connector
2do Pso
Crear una variable y almacena la información de tu conexión:
(En este caso lo realice mediante diccionario)
1
dbconexion={'host':'localhost','user':'root','password':'','database':'nombre_DB'}
utilizamos como servidor local el "localhost" , como usuario "root",como contraseña: ""(ninguna pues no necesitamos una en este caso) por lo que debes de poner las comillas dobles vacías, sin espacio y por ultimo la base de datos(database) que en este caso es el nombre de tu base de datos que has creado en tu gestor de mySql.
3er Paso:
Realizamos la conexión e instanciamos el objeto "conexion" con su método cursor, que a su vez obtenemos otro objeto al que le llamamos por convención "cursor".
(cursor se encarga de hacer los recorridos en las tablas,vistas o procedimientos que tengas en tu base de datos )
1
2
conexion=mysql.connector.connect(**dbconexion)
cursor=conexion.cursor()
4to Paso:
Ahora ya estamos listo, procedemos a realizar una inserción ,eliminación y actualización en la base de datos que vinculaste en el 2do paso.
Para insertar datos en una tabla de la base de dados seria así:
(por cierto no entro en detalles de la sentencia sql porque asumo que ya conoces esto.)
1
2
3
insertar="insert into usuario(id,nombre,edad) values(1,'Pepito',25);"
cursor.execute(insertar)
conexion.commit()
El execute es para aplicar o ejecutar la inserción en la base de datos y commit es para confirmar la inserción.
Para el proceso de eliminación y actualización en la tabla de la base de datos podremos decir que son los mismos pasos solo cambiaría la sentencia sql
(te reto a que puedas probarlo)
5to paso y ultimo:
Y como ultimo paso, nos enfocamos en la consulta que trata de obtener la información de la base de datos, para esto utilizamos la siguiente codificación:
1
2
3
4
5
6
sql="select * from usuario"
cursor.execute(sql)
resultado=cursor.fetchall()
for dato in resultado:
print (str(dato[0])+" "+str(dato[1])+" "+str(dato[2]))
El fetchall recupera todos el conjunto de datos activo, o sea contiene todas las tuplas de nuestra tabla respecto a la sentencia sql, en un array con el cual con un ciclo for podemos hacer el recorrido y obtener la información de nuestra tabla en la base de datos.
A por cierto no olvides cerrar la base de datos cada vez que realices una inserción,eliminación,actualización o consulta .ya que si lo mantienes abierta ocupara recursos innecesarios en la Ram.
Cerramos de esta forma:
1
2
cursor.close()
conexion.close()
Cerramos el cursor y luego la conexión a la base de datos.
Bueno eso es todo, espero que te haya servido y sea de utilidad para tus proyectos o actividades en la que estés desarrollando o vayas a desarrollar a futuro,no te olvides calificar el tema, cualquier cosa lo haces saber . Saludos!


Comentarios... (3)
Gracias por compartirlo!!!