Python y MySQL desde PHP

By mescobal

Estaba reconvirtiendo un programita hecho en PHP a Python.
Estaba acostumbrado a hacer:


function datos($tabla,$campo,$clave){
$sql_det = 'SELECT * FROM '.$tabla.' WHERE '.$campo.'="'.$clave.'"';
$res_det = mysql_query($sql_det);
return mysql_fetch_array($res_det);

Sin embargo, al intentar hacer lo mismo en Python


def consulta(sql):
db = MySQLdb.connect(host="localhost",user="xxxl",passwd="xxx",db="xxxx")
cur = db.cursor(MySQLdb.cursors.DictCursor)
cur.execute(sql)
res = cur.fetchall()
return res

Me devuelve un array que requere de un índice entero para referirse a él. Yo estaba acostumbrado a referirme a los campos por su nombre.
Buscando por ahí, encontré la solución que espero sea útil para quien tenga similares problemas:


def consulta(sql):
db = MySQLdb.connect(host="localhost",user="xxxl",passwd="xxx",db="xxx")
cur = db.cursor(MySQLdb.cursors.DictCursor)
cur.execute(sql)
res = cur.fetchall()
return res

El original fue encontrado en “Will code for food“.

Etiquetas: ,

Escribe un comentario