![]() |
Zeos Acces - ¿Como buscar registros?
Hola Todos
Estoy trabajando con el Zeos Acces para hacer la conexion por red entre MYsql y Delphi, hasta el momento me ha trabajado muy bien, el problema es el Zeos Acces no tiene el tan valioso findkey, Alguien sabe entonces como se buscan registros con este componente. |
Por supuesto:
Olvídate del findkey y locate en estos Sistemas Gestores de Bases de Datos (SGBBDD). Aquí se trata de buscar solo el registro que hace falta, nada de traer al ordenador cliente los 3 millones de registros de la tabla para después usar un Locate o Findkey. Saludos |
No coincido Lepe, hay ocasiones en que se requiere hacer una sub-búsqueda en el set de registros que se trajeron de un Query. Ahi si es válido el findkey o locate.
Digamos que tienes una tabla "clientes" y quieres traer todos los clientes con ventas en este mes. Haces el query SQL y los traes. Ahora bien, ya tienes ese set de datos y ahora quieres encontrar un nombre en particular. Pues ahi si se puede usar un findkey o locate que será más rápido que volver a hacer el query. Las ZDataset si trae locate y findkey pues descienden de TDAtaset. |
gracias por las respuestas, mira pues el Zquery no se me hace muy familiar para mi, me puedes coloborar explicandome como lo conecto a Ztable es que lo hago y no me funciona, y respecto a ZDataset pues no lo encuentro sinseramente, ¿ me podes decir donde esta?.
|
Estaba pensando en otras situaciones. Muy de acuerdo contigo AzidRain.
El ZDataset, imagina que son 4 Zquerys en un componente. Una para cuando quieres insertar, otra para eliminar, otra para refrescar el registro actual y por último otra Zquery para modificar los datos. busca información sobre el SQL, un ejemplo: doble clic a ZDataset, boton derecho y añade los campos. Enlaza ese ZDataset con tu TZTransaction, usa un DBNavigator y unos edits enlazados a los campos de este ZDAtaset. Listo, ya puedes insertar, borrar, modificar y refrescar desde la tabla. Lo que has ganado, es que solo viajará 1 registro por la red (el que quieres modificar). Edito: usar la etiqueta noparse para las caritas dentro del código sql ;) Saludos |
Fijate que yo me encontré sin querer una chapuza:
"select * from clientes where numcliente is null" Obviamente me devuelve un set vacio, pero que crees, si haces un insert, efectivamente agregas un registro a la tabla. Respondiendo a nuestro amigo: ZTable es un ZQuery Modificado, la diferencia es que ZTable siempre hace un select * from...o sea se trae todos los registros de la tabla sin importar su número...En cambio en ZQuery, puedes modificar su propiedad SQL para que contenga el select que necesites (puedes ser un insert o un delete), aqui es donde radica su potencia. Se usa de forma idéntica a cualquier otra tabla y tiene casi los mismos métodos que ZTable.
Obviamente la propiedad SQL normalmente contendrá cosas mas complicadas que un select *. |
Gracias por tu ayuda, para futuro y refencia de otros segun Embacadero genera un error si se cierra el Query, como debe quedar y que a mi me funciono segun el foro es:
|
Está bien recordárselo 11 años después :)
|
La franja horaria es GMT +2. Ahora son las 21:16:16. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi