problema con cadena %s y consulta

inf200468 en ucf.edu.cu inf200468 en ucf.edu.cu
Lun Mayo 4 18:11:01 CEST 2009



esta funcion es la que da error por los %
def GenerarAlarmaPatronesUrl(self):
        conex=Conexion.conectar(self)
        idlog=self.DeterminarIDTraza() #obtengo el
id de la traza
        fecha =
self.DeterminarUltimaFecha() #obtengo la fecha del fichero
        params=(idlog)
        sql=self.ObtenerPatrones()
        
        print params
        sql=r"select * from apache_access
where url like '%www%'"
        print
sql
        result
=Conexion.ConsultaSelect(self,conex,sql)
> inf200468 en ucf.edu.cu escribió:

>> 
>> ok, voy a probar 
>> gracias 
>>
puedo poner r'select * from apache where�url 
>> like \'%google%\' '�� ????

>> 
>> 
>> 
> 
> Ademas de usar raw
strings podrias escapar los % con dos % seguidos, lo 
> que te permite mezclar
facilmente %s con % dentro de la cadena. Por ejemplo: 
> 
>>>>
"select * from %s = '%%xxx%%'" % "campo" 
> "select *
from campo = '%xxx%'" 
>>>> 
> 
>> 
>>> Puedes probar 
>> escribiendo la cadena como 
>>> r'%google%' 
>>> 
>>> La r 
>>
hace que la cadena se tome como raw, y que todos los caracteres se 
>>
interpreten como lo que son y no por sus significados especiales. 
>>> 
>> Saludos, 
>>> Miguel. 
>>> 
>>> El
lun, 04-05-2009 a las 09:29 -0400, 
>> inf200468 en ucf.edu.cu escribi�: 
>>>> Hola , tengo que 
>> hacer una consulta a una bd postgre,
yo uso psycopg2 , pero la cadena 
>>>> de 
>> la consulta
usa like, de la siguiente manera: 
>>>> select * from apache where 
>> url 
>>>> like '%google%' 
>>>> pero da un
error y debe ser por los %, 
>> como saben se usan para 
>>>> concatenarle un string en una posicion 
>> determinada,

>>>> si alguien puede decirme 
>>>> una solucion 
>>>> gracias 
>>>> saludos 
>>>> 
>>>> 
>>>> 
>>>> 
>>>>
------------------------------------------------------------------------ 
>>>> 
>>>>
_______________________________________________ 
>>>> Lista de correo
Python-es 
>>>> http://listas.aditel.org/listinfo/python-es 
>>>> FAQ: http://listas.aditel.org/faqpyes 
> 
>
_______________________________________________ 
> Lista de correo Python-es 
> http://listas.aditel.org/listinfo/python-es 
> FAQ:
http://listas.aditel.org/faqpyes 



--
Participe en Universidad 2010,
del 8 al 12 de febrero del 2010
La Habana, Cuba
http://www.universidad2010.cu
http://www.universidad2010.com
------------ próxima parte ------------
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes


Más información sobre la lista de distribución Python-es