Problema access con python

Joksan Nempu Fernandez jnempu en gmail.com
Mar Jun 10 20:25:43 CEST 2008


graciasss por tu ayuda !!! :)

2008/6/10 Miguel Beltran R. <yourpadre en gmail.com>:

> El error te lo da la linea
> campos[x] = rs.Fields.Item(x).Value
>
> dice que ya no tienes registros
> pywintypes.com_error: (-2147352567, 'Ocurri\xf3 una excepci\xf3n.', (0,
> > u'ADODB.
> > Field', u'El valor de BOF o EOF es True, o el actual registro se
> elimin\xf3;
> > la
> > operaci\xf3n solicitada requiere un registro actual.',
>
> primero necesitas revisar si el recordset si trae datos, algo como
> if not rs.eof:
> antes del for
>
> 2008/6/6 Joksan Nempu Fernandez <jnempu en gmail.com>:
> > Hola lista:
> >
> > Estoy programando python con access y he estado haciendo algunas pruebas
> > como insert,select, todo iba bien, hasta que quize hacer un select * from
> > table where table.dato like '*patron*'. Al mandar esta sql python lanza
> una
> > excepcion.
> >
> > ######### CODIGOO ###########
> >
> >        rs = win32com.client.Dispatch(r'ADODB.Recordset')
> >        sql = "SELECT * FROM tarifa WHERE patron LIKE '"+patron+"*' "
> >        print sql
> >        rs.Open(sql, self.conn)
> >        #rs.Open("SELECT * FROM tarifa WHERE tarifa.patron LIKE
> > '"+patron+"*' ", self.conn)
> >        campos = {}
> >        for x in range(rs.Fields.Count):
> >            campos[x] = rs.Fields.Item(x).Value
> >        print campos
> >
> > y me lanza el siguiente error:
> > Conectado a la BD
> > SELECT * FROM tarifa WHERE patron LIKE '*1242357*'
> > Traceback (most recent call last):
> >  File "tvoip.py", line 9, in <module>
> >    from libtvoip import tvoipapp
> >  File "C:\Documents and
> > Settings\JNempu\Escritorio\pytvoip\libtvoip\tvoipapp.py
> > ", line 9, in <module>
> >    class tvoipapp:
> >  File "C:\Documents and
> > Settings\JNempu\Escritorio\pytvoip\libtvoip\tvoipapp.py
> > ", line 13, in tvoipapp
> >    vista = tvoipvista.tvoipvista()
> >  File "C:\Documents and
> > Settings\JNempu\Escritorio\pytvoip\libtvoip\tvoipvista.
> > py", line 26, in __init__
> >    self.bd.buscarTarifaporNumero("1242357")
> >  File "C:\Documents and
> > Settings\JNempu\Escritorio\pytvoip\libtvoip\persistenci
> > a.py", line 20, in buscarTarifaporNumero
> >    campos[x] = rs.Fields.Item(x).Value
> >  File "C:\Python25\Lib\site-packages\win32com\client\dynamic.py", line
> 495,
> > in
> > __getattr__
> >    raise pythoncom.com_error, details
> > pywintypes.com_error: (-2147352567, 'Ocurri\xf3 una excepci\xf3n.', (0,
> > u'ADODB.
> > Field', u'El valor de BOF o EOF es True, o el actual registro se
> elimin\xf3;
> > la
> > operaci\xf3n solicitada requiere un registro actual.',
> > u'C:\\WINDOWS\\HELP\\ADO2
> > 70.CHM', 1240645, -2146825267), None)
> >
> > Estoy trabajando en windows xp con python 2.5 y pywin32-211
> >
> > Realmente no se que error podrá ser , he buscado en google  y es poco lo
> que
> > he podido obtener.
> >
> > De antemano gracias!.
> > --
> > Joksan Nempu Fernandez
> > Estudiante Ingeniería Civil en Computación e Informática.
> > Encargado del Laboratorio de Sistemas Distribuidos.
> > _______________________________________________
> > Lista de correo Python-es
> > http://listas.aditel.org/listinfo/python-es
> > FAQ: http://listas.aditel.org/faqpyes
> >
>
>
>
> --
> ________________________________________
> Lo bueno de vivir un dia mas
> es saber que nos queda un dia menos de vida
> _______________________________________________
> Lista de correo Python-es
> http://listas.aditel.org/listinfo/python-es
> FAQ: http://listas.aditel.org/faqpyes
>



-- 
Joksan Nempu Fernandez
Estudiante Ingeniería Civil en Computación e Informática.
Encargado del Laboratorio de Sistemas Distribuidos.
_______________________________________________
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