22/7/13

Python - MySQL

En esta entrada vamos a realizar operaciones con una base de datos de MySQl. y con un fichero de texto plano.

Vamos a comenzar realizando operaciones con MySQL, creaemos una tabla, insertaremos un par de registros, los recuperaremos y visualizaremos.

En mi caso he creado un base de datos con MySQL Workbench 5.2, la he denominado "deusto".

Para poder trabajar con MySQL tendremos que intalar MySQLdb de esta página (última versión), bastara con descargarlo e instalarlo por defecto en el directorio de Python donde hemos instalado Python.

Una vez instalado ya podremos utilizar MySQLdb:

'''
Created on 22/07/2013

@author: aaguilar
'''


# Importa librerias de MySQL
 import MySQLdb

# La función connect devuelve un objeto de tipo Connection en función de los parámetros que le informemos
bbdd = MySQLdb.connect(host="localhost", # your host, usually localhost
                       user="root", # your username
                       passwd="root", # your password
                       db="deusto") # name of the data base

 print bbdd
 

# Las distintas operaciones que podemos realizar con la base de datos se realizan a través de un objeto Cursor.
c = bbdd.cursor()
 

# creemos una nueva tabla empleados en la base de datos
c.execute("""create table empleados(dni text,
             nombre text,
             departamento text)""")
 

# insertemos un par de tuplas en nuestra nueva tabla
c.execute("""insert into empleados
             values ('123456789-A','Javier Carrasco','Contabilidad')""")

c.execute("""insert into empleados
              values ('123456710-B','Manuel Aguilar','Contabilidad')""")
 

# Realizamos un commit para que las tuplas insertadas sean almacenadas
bbdd.commit()
 

# Realizamos una consulta sobre la tabla que hemos creado
c.execute("""select * from empleados""")
 

# Recorremos las tuplas que recuperamos en la consulta
for resultado in c.fetchall():
    print resultado
 

# Cerramos la conexión y el cursor
c.close()
bbdd.close()



Ahora vamos a probar otro ejemplo para realizar pruebas mas sencillas, donde en lugar de trabajar con una base de datos MySQL, vamos a trabajar sobre un fichero de texto plano.

Ppara ello utilizaremos SQLite, es una base de datos Open Source minimalista. Se caracteriza por:
 - No tener ningún demono por detras, los datos se almacenan en un único fichero, 
 - Es realmente pequeña, no exige practicamente recursos, no tiene depedencias.
 - Funcionalidad muy limitada, en comparación con otras bases de datos.
 - Multiplataforma
 - Utilizada por aplicaciones de escritorio.

Veamos el ejemplo con SQLite:
'''
Created on 22/07/2013

@author: aaguilar
'''

# Importa librerias de SQLite
import sqlite3 as dbapi
print dbapi.apilevel
print dbapi.threadsafety
print dbapi.paramstyle


# La función connect devuelve un objeto de tipo Connection que representa la conexión con el servidor.
# Siendo deusto.dat el nombre del fichero
 bbdd = dbapi.Connection("deusto.dat")

 print bbdd
 

# Las distintas operaciones que podemos realizar con la base de datos se realizan a través de un objeto Cursor.
c = bbdd.cursor()
 

# creemos una nueva tabla empleados en la base de datos
c.execute("""create table empleados(dni text,
             nombre text,
             departamento text)""")
 

# insertemos un par de tuplas en nuestra nueva tabla
c.execute("""insert into empleados
             values ('123456789-A','Javier Carrasco','Contabilidad')""")

c.execute("""insert into empleados
              values ('123456710-B','Manuel Aguilar','Contabilidad')""")
 

# Realizamos un commit para que las tuplas insertadas sean almacenadas
bbdd.commit()
 

# Realizamos una consulta sobre la tabla que hemos creado
c.execute("""select * from empleados""")
 

# Recorremos las tuplas que recuperamos en la consulta
for resultado in c.fetchall():
    print resultado
 

# Cerramos la conexión y el cursor
c.close()
bbdd.close()




Un saludo a todos.

No hay comentarios :

Publicar un comentario