[Python-es] Buscar campo mysql
Rubén
parraymartinez en terra.es
Vie Feb 19 01:23:56 CET 2010
Sí, creo que es la mejor forma de aprender...
¿Cómo lo haría entonces?
Gracias y un saludo.
--------------------
Rubén
http://foroubuntu.es
-----Mensaje original-----
De: Jose Caballero <jcaballero.hep en gmail.com>
Reply-to: La lista de python en castellano <python-es en python.org>
Para: La lista de python en castellano <python-es en python.org>
Asunto: Re: [Python-es] Buscar campo mysql
Fecha: Thu, 18 Feb 2010 19:05:31 -0500
fetchone() devuelve una tupla, no un diccionario.
Una pregunta, sólo por curiosidad, ¿te has puesto a programar eso sin
saber absolutamente nada de python ni de SQL?
El 18 de febrero de 2010 18:43, Rubén <parraymartinez en terra.es>
escribió:
Gracias malmolro,
Llevo horas leyendo sobre los diccionarios en Python pero no hay
manera. Lo he probado casi todo pero siempre me da algún error.
Entiendo que en
registro.execute("SELECT mail_uno FROM datos WHERE hostname = '%
s'" % nombre.value)
resu = registro.fetchone()
print repr(resu)
Entiendo que "resu" vendría a ser el diccionario
{mail_uno:'correo en correo.com'}
Pero si pongo resu['mail_uno'] me da error. He leído lo que me
has pasado y tropecientas páginas más pero no consigo sacar sólo
la dirección de mail.
PD: Perdón por la falta de netiqueta, pero si la seguimos a
veces sí a veces no se hace ininteligible.
Gracias sinceras por vuestra ayuda. Si sabéis por donde puedo
buscar o cómo hacerlo... Estoy desesperado.
Un saludo.
--------------------
Rubén
http://foroubuntu.es
-----Mensaje original-----
De: marmolro <marmolro en gmail.com>
Reply-to: La lista de python en castellano
<python-es en python.org>
Para: La lista de python en castellano <python-es en python.org>
Asunto: Re: [Python-es] Buscar campo mysql
Fecha: Thu, 18 Feb 2010 22:55:51 +0100
2010/2/18 Rubén <parraymartinez en terra.es>
Perdón, me he colado... No quería decir array, no se
porqué he puesto eso. Mil disculpas, no me he explicado
nada bien;-)
Me refería a dejar sólo correo en correo.com y quitar
"{mail_uno:", "}", o que sólo me salga el valor
corre en correo.com en "resu"
Gracias de nuevo -sobre todo por la paciencia- y un
saludo.
--------------------
Rubén
http://foroubuntu.es
-----Mensaje original-----
De: RadicalEd <willian.radicaled en gmail.com>
Reply-to: La lista de python en castellano
<python-es en python.org>
Para: La lista de python en castellano
<python-es en python.org>
Asunto: Re: [Python-es] Buscar campo mysql
Fecha: Thu, 18 Feb 2010 15:51:31 -0500
En python no existen los arrays, se llaman listas, si
quieres agregar un valor a una lista primero debes
crearla y luego irle asignando valores, me imágino que
recorres tú tupla por un for entonces lo harías algo
así:
lista = []
for h in range(1, 10):
lista.append(h)
Solo cambia el h por tú registro de correo.
2010/2/18 Rubén <parraymartinez en terra.es>
Perdón, sí me imprime el resultado, pero no sólo
el valor: {'mail_uno': 'correo en correo.com'}
Bueno, ¡voy avanzado!
¿Cómo hago para hacer un array con sólo la
dirección de mail?
¡Muchas gracias!
--------------------
Rubén
http://foroubuntu.es
-----Mensaje original-----
De: Rubén <parraymartinez en terra.es>
Reply-to: La lista de python en castellano
<python-es en python.org>
Para: RadicalEd <willian.radicaled en gmail.com>
Cc: La lista de python en castellano
<python-es en python.org>
Asunto: Re: [Python-es] Buscar campo mysql
Fecha: Thu, 18 Feb 2010 20:37:32 +0100
Gracias, RadicalED
Ahora no me da error, pero al imprimir en
pantalla con resu = registro.fetchall() print
repr(resu) no me aparece el valor del campo sino
(). Si cambio fetchall por fetchone me aparece
None
Sigo haciendo algo mal...
--------------------
Rubén
http://foroubuntu.es
-----Mensaje original-----
De: RadicalEd <willian.radicaled en gmail.com>
Para: parraymartinez en terra.es
<parraymartinez en terra.es>, La lista de python en
castellano <python-es en python.org>
Asunto: Re: [Python-es] Buscar campo mysql
Fecha: Thu, 18 Feb 2010 13:58:37 -0500
registro.execute("SELECT mail_uno FROM datos
WHERE hostname = '%s'" % nombre.value)
2010/2/18 parraymartinez en terra.es
<parraymartinez en terra.es>
>----Mensaje original----
>De: damufo en gmail.com
>Fecha: 18/02/2010 1:12
>Para: "La lista de python en
castellano"<python-es en python.org>
>Asunto: Re: [Python-es] Buscar campo
mysql
>
>Será que tienes que comparar con algo
el campo hostname (en el where) ?
> registro.execute("SELECT mail_uno
FROM datos WHERE hostname='algo???'")
Me da otro error con el siguiente
código:
registro.execute("SELECT mail_uno FROM
datos WHERE hostname = nombre.value")
#Donde nombre.value es el hostname
sacado del MS Excel
resu = registro.fetchall()
print repr(resu)
Éste es el error:
/*Traceback (most recent call last):
File "exceltux", line 69, in <module>
registro.execute("SELECT mail_uno
FROM datos WHERE hostname =
nombre.value")
File
"/var/lib/python-support/python2.6/MySQLdb/cursors.py", line 166, in execute
self.errorhandler(self, exc, value)
File
"/var/lib/python-support/python2.6/MySQLdb/connections.py", line 35, in defaulterrorhandler
raise errorclass, errorvalue
_mysql_exceptions.OperationalError:
(1054, "Unknown column 'nombre.value' in
'where clause'") */
Si nombre.value lo entrecomillo
'nombre.value' me imprime en pantalla
"None"
He buscado el error por internet pero no
saco nada en claro.....
>En 2010/02/18 00:53, Rubén escribiu:
> Me da el siguiente error:
>
> registro.execute("SELECT mail_uno FROM
datos WHERE hostname")
> exceltux:38: Warning: Truncated
incorrect INTEGER value: HOSTNAME01
>
> ¿A que puede ser debido?
>
> Un saludo.
> --------------------
> Rubén
> http://foroubuntu.es
>
> -----Mensaje original-----
> *De*: Rubén <parraymartinez en terra.es
> <mailto:%3d%3fISO-8859-1%3fQ%3fRub%
3dE9n%3f%3d%20%3cparraymartinez en terra.es
%3e>>
> *Reply-to*: La lista de python en
castellano <python-es en python.org>
> *Para*: La lista de python en
castellano <python-es en python.org
> <mailto:La%20lista%20de%20python%20en%
20castellano%20%3cpython-es en python.org%
3e>>
> *Asunto*: Re: [Python-es] Buscar campo
mysql
> *Fecha*: Wed, 17 Feb 2010 22:53:32
+0100
>
> Gracias por tu respuesta.
>
> Entiendo entonces que por donde tengo
que tirar es por el SELECT de mysql.
>
> Lo pruebo y os cuento.
>
> ¡Muchas gracias!
>
> --------------------
> Rubén
> http://foroubuntu.es
>
>
> -----Mensaje original-----
> *De*: RadicalEd
<willian.radicaled en gmail.com
> <mailto:RadicalEd%20%
3cwillian.radicaled en gmail.com%3e>>
> *Reply-to*: La lista de python en
castellano <python-es en python.org>
> *Para*: La lista de python en
castellano <python-es en python.org
> <mailto:La%20lista%20de%20python%20en%
20castellano%20%3cpython-es en python.org%
3e>>
> *Asunto*: Re: [Python-es] Buscar campo
mysql
> *Fecha*: Wed, 17 Feb 2010 16:41:18
-0500
>
> Segun te entiendo lo que debes hacer
es una consulta SQL condicional
>
> SELECT email FROM datos WHERE
hostname='DATO EXTRAIDO DEL ARCHIVO DE
EXCEL'
>
> 2010/2/17 Rubén
<parraymartinez en terra.es
<mailto:parraymartinez en terra.es>>
>
> Buenas lista,
>
> Estoy liado con un programa y he
llegado a un punto muerto.
>
> El programa lee de un archivo de
MS Excel dos columnas: una que
> viene el hostname de un equipo y
otra una condición, llamémosla n.
> Por otra parte tengo una tabla en
mysql con un campo para el
> hostname y otra para una dirección
de mail asociada a la que se
> tiene que enviar un correo.
>
> La cosa está en que llego a sacar
los campos de la base de datos
> como un diccionario pero sin
clave:
>
> registro.execute("SELECT * FROM
datos")
> resu = registro.fetchall()
> print repr(resu)
>
> Lo que busco es la manera de que
si en el excel se cumple la
> condición n en cierto hostname,
poder sacar como char la dirección
> de mail de la base de datos
asociada a ese mismo hostname.
>
> Lo de la lectura del MS Excel y el
envío del correo lo tengo
> solucionado.
>
> ¿Alguna idea de por donde puedo
tirar?
>
> Gracias por vuestra ayuda y un
saludo.
>
> --------------------
> Rubén
> http://foroubuntu.es
>
>
>
>
>
_______________________________________________
> Python-es mailing list
> Python-es en python.org
<mailto:Python-es en python.org>
>
http://mail.python.org/mailman/listinfo/python-es
> FAQ:
http://python-es-faq.wikidot.com/
>
>
>
>
> --
> The past are just memories, the future
are just dreams!!!
> http://foros.solocodigo.com
> http://radicalpython.blogspot.com
>
http://revistacodigolatino.blogspot.com
>
>
_______________________________________________
> Python-es mailing list
> Python-es en python.org
<mailto:Python-es en python.org>
>
http://mail.python.org/mailman/listinfo/python-es
> FAQ:http://python-es-faq.wikidot.com/
>
_______________________________________________
> Python-es mailing list
> Python-es en python.org
<mailto:Python-es en python.org>
>
http://mail.python.org/mailman/listinfo/python-es
> FAQ:http://python-es-faq.wikidot.com/
>
>
>
>
_______________________________________________
> Python-es mailing list
> Python-es en python.org
>
http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
_______________________________________________
Python-es mailing list
Python-es en python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/
_______________________________________________
Python-es mailing list
Python-es en python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/
--
The past are just memories, the future are just
dreams!!!
http://foros.solocodigo.com
http://radicalpython.blogspot.com
http://revistacodigolatino.blogspot.com
_______________________________________________
Python-es mailing list
Python-es en python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/
_______________________________________________
Python-es mailing list
Python-es en python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/
--
The past are just memories, the future are just
dreams!!!
http://foros.solocodigo.com
http://radicalpython.blogspot.com
http://revistacodigolatino.blogspot.com
_______________________________________________
Python-es mailing list
Python-es en python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/
_______________________________________________
Python-es mailing list
Python-es en python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/
Lo que tienes entre manos es un diccionario, por lo que para
acceder al valor lo haces por la clave:
>>> {'mail_uno': 'correo en correo.com'}['mail_uno']
'correo en correo.com'
Un poco de lectura no viene mal:
http://docs.python.org/tutorial/datastructures.html#dictionaries
http://es.wikipedia.org/wiki/SQL
Un saludo,
_______________________________________________
Python-es mailing list
Python-es en python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/
_______________________________________________
Python-es mailing list
Python-es en python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/
--
Insurrection is an art, and like all arts has its own laws. Leon Trotsky
_______________________________________________
Python-es mailing list
Python-es en python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20100219/b4e28434/attachment.html>
Más información sobre la lista de distribución Python-es