Lo primero que se debe realizar es instalar el paquete python-mysqldb, en Ubuntu se puede realizar la instalación mediante apt-get:
sudo apt-get install python-mysqldb
El paquete también puede ser encontrado en http://sourceforge.net/projects/mysql-python/.
Con python-mysqldb instalado, en NetBeans se procede a crear un proyecto Python, para el presente ejemplo se lo denominó SimpleMySQL y se utilizará la plataforma Python propia del sistema operativo.

Al finalizar el asistente se creará un archivo por defecto llamado simplemysql.py con la siguiente estructura:
# To change this template, choose Tools | Templates # and open the template in the editor. __author__="edisson" __date__ ="$05/07/2009 05:23:25 PM$" if __name__ == "__main__": print "Hello World";
Antes de realizar la conexión, se creará un usuario para que pueda acceder a la base de datos sakila, para ello como usuario root en MySQL creamos al usuario python mediante la sentencia:
mysql> grant all on sakila.* to 'python' IDENTIFIED BY 'python';
Con el usuario creado, reemplazamos el contenido de simplemysql.py por:
import MySQLdb __author__="edisson" __date__ ="$05/07/2009 05:23:25 PM$" def conectar(): db = MySQLdb.connect(host='localhost',user='python',passwd='python',db='sakila') cursor = db.cursor() sql = 'select * from country' cursor.execute(sql) paises = cursor.fetchall() print 'Listado de Paises' for pais in paises: print pais[0],'->',pais[1]; conectar()
Al ejecutar este archivo tendremos la siguiente salida:
Listado de Paises
1 : Afghanistan
2 : Algeria
3 : American Samoa
4 : Angola
5 : Anguilla
6 : Argentina
...

Un detalle importante que recalcar es el mensaje de advertencia mostrado al ejecutar simplemysql.py:
/var/lib/python-support/python2.6/MySQLdb/__init__.py:34: DeprecationWarning: the sets module is deprecated
from sets import ImmutableSet
from sets import ImmutableSet
Esto se debe a que se está empleando Python 2.6.2 con python-mysqldb 1.2.2.7ubuntu1, éste último debe ser utilizado con Python 2.5 sin embargo este error no es intrusivo y nos va a permitir trabajar normalmente. Para evitar este problema se puede trabajar con Python 2.5 o utilizar la versión 1.2.3 de python-mysqldb pero ésta todavía se encuentra en estado de Release Candidate.
No hay comentarios.:
Publicar un comentario