Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Problema con la funcion Seek de un TADOTable (https://www.clubdelphi.com/foros/showthread.php?t=31239)

DanForever 03-05-2006 10:10:57

Problema con la funcion Seek de un TADOTable
 
Mi problema es el siguiente:



Dentro de mi código, me da un fallo en la siguiente línea:
Código Delphi [-]
if ADOTTamMue.Seek(VarArrayOf([KCampo1,KCampo2,KCampo3])) then
Algunas aclaraciones:
  • KCampo1, KCampo2 y KCampo3 son variables de tipo String
  • Los campos en la tabla de la BBDD son de tipo Varchar (La BBDD en cuestión es DB2).
  • ADOTTamMue es un TADOTable
El mensaje que me da al llegar a esta linea es:
Cita:

Debugger Exception Notification
Project ContNuevos.exe raised exception class EOleException with message 'El proveedor actual no admite la interfaz necesaria para la funcionalidad Índice'. Process stopped. Use Step or Run to continue.


De momento pienso que es problema de la base de datos (aunque no sé exactamente cual problema es).
Me gustaría que me dierais vuestra opinión acerca del problema, y cómo podría solucionarlo.
Gracias por tomar parte de vuestro tiempo en leer este mensaje.

Neftali [Germán.Estévez] 03-05-2006 11:29:50

¿Has revisado en la ayuda de Delphi TADOTable.Seek?
Lo digo porque explica detalladamente algunas condiciones que deben de cumplirse para poder utilizarlo.

Por ejemplo, debes tener un índice creado por esos campos y debe estar activado. CommandType debe estar a cmdTableDirect, cosa que también comenta la ayuda.

¿Qué Base de Datos estás utilizando?

Otra nota que se lee en la ayuda es:

----------------------------------------------------------------
Note: The VCL Seek method is a direct implementation of the Seek method for the ADO Recordset object. At the time of this writing, this method is only supported for use with Microsoft Access2000 and the Jet 4 provider.
----------------------------------------------------------------


Revisa estos aspectos y dinos si todavía persiste el problema.

DanForever 04-05-2006 13:29:00

Solucionado
 
Ya está solucionado el problema.
Resulta que no habia leido bien la nota que hay al final en la ayuda :o (aquella que dice que el metodo sólo funciona con Access2000)

Claro, como la base de datos a la que accedo no es de Access...

Al final e tenido ke modificar algo de mi codigo, para poder usar el metodo Locate:rolleyes:

En fin, que ya tengo el problema solucionado.
Gracias Neftali por refrescarme las ideas (y hacer que me de cuenta de ke no había leído bien la ayuda de Delphi)


La franja horaria es GMT +2. Ahora son las 14:04:35.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi