Python + PyGtk + SQLAlchemy en SQL
SQLAlchemy es un ORM para python, con el cual se puede hacer el mapeo de tablas a objetos sin que el programador intervega de manera profunda o tambi茅n se puede usar directamente SQL sin haber creado estas relaciones ORM.
Objetivo
Desarrollar una aplicaci贸n CRUD que permita crear, leer, actualizar y remover.
Desarrollo
En este caso se crear谩 una interfaz algo complicada que desplegar谩 en un treeview el contenido de la base de datos, permitir谩 crear nuevos elementos, actualizarlos y borrar uno seleccionado, la intefaz se como

Tambi茅n se necesita crear la base de datos, en este caso s贸lo contiene la clave primaria que se autoincremente y como cadenas el nombre, apellido paterno y apellido materno, hay un script sql que se adjunto al c贸digo.
Usando SQLAlchemy
La siguiente parte de c贸digo es aquella de este programa que se encarga de comunicarse con la base de datos con la ayuda de SQLAlchemy, notar que no se ha usado la parte ORM de SQLAlchemy y por eso mismo s贸lo le hacemos un import a “create_engine” ya que para este caso no necesitamos m谩s funcionalidad al respecto.
from sqlalchemy import create_engine class Modelos(): def loadPersonasFromDB(self): c = create_engine("mysql://root:root@localhost/basesimple", echo = True) resproxy = c.execute("SELECT * from base") rows = [r for r in resproxy] return rows def newPersona(self, nombre, apepat, apemat): cmd = """INSERT INTO `basesimple`.`base` (`nombre`, `apepat`, `apemat`) VALUES('%s', '%s', '%s');"""%(nombre, apepat, apemat) c = create_engine("mysql://root:root@localhost/basesimple", echo = True) resproxy = c.execute(cmd) idinserted = resproxy.lastrowid return idinserted def updatePersona(self, idx, nombre, apepat, apemat): cmd = """UPDATE base SET nombre = '%s', apepat = '%s', apemat = '%s' WHERE idbase = %d """%(nombre, apepat, apemat, idx) c = create_engine("mysql://root:root@localhost/basesimple", echo = True) resproxy = c.execute(cmd) def deletePersona(self, idx): cmd = "delete from `basesimple`.`base` where idbase = %d"%idx c = create_engine("mysql://root:root@localhost/basesimple", echo = True) resproxy = c.execute(cmd)
El c贸digo con los archivos necesarios lo puedes descargar aqu铆. Se debe de notar que el usuario y password que se usan es聽 “root” en ambos casos.
Quiz谩 te interese :
Algunas ocasiones necesitamos subir archivos mediante un servidor FTP y quiz谩 no tenemos un clie ...
Para la replicaci贸n de base de datos se necesitan un Maestro y uno o varios esclavos seg煤n sea e ...
Para poder conectar Ruby con Mysql necesitamos de tres cosas: Ruby, Mysql y el modulo Ruby My ...





