Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 15-07-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 30
jachguate Va por buen camino
Cool

Cita:
Empezado por Carlex
pero hasta donde lei en el manual de delphi, el locate es una funcion muy rapida para encontrar una llave o campo
Yo diría que el locate es una función que te permite encontrar de manera fácil un registro en base a cualquier campo... pero de eso a que sea muy rápida..., yo diría mas bien, ineficiente. Esto lo digo por definición... ya verás.

Cita:
Empezado por Carlex
y si estoy usando SQL server 2000 es por que debo manejar un a BD de mas de 80 mil datos
Has considerado otras opciones?
¿Firebird por ejemplo?

Cita:
Empezado por Carlex
y mi preocupacion es que las busquedas tarden demasiado, por eso no use un query, ya que en algunas tablas debo controlar la duplicidad de una llave, en otros casos un campo X.
Creo que en ningun caso puede ser mas rápido un método de búsqueda en el cliente que un query contra el servidor. El cliente no tiene mas que un mar de datos en los que moverse secuencialmente, además, deberá hacer viajar por la red tantos registros como sea necesario para ubicar el buscado. En cambio el servidor, tiene a su disposición indices y un motor de optimización de consultas que por algo se habrán matado los programadores haciendo...
Además de tener los datos en el disco local y, dependiendo de las características del motor, hasta podria mantenerlos en memoria RAM (si son datos de acceso frecuente).

Lo que hará falta es que tengas los indices adecuados para que las consultas que lances puedan obtener una respuesta rápida.

Es mi opinión personal, claro. Puede que haya alguna implementación eficiente del locate (depende de las clases de acceso a datos que uses)... pero no se me ocurre una implementación eficiente que no se valga de un query directo contra la bd...

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #2  
Antiguo 15-07-2004
Avatar de marto
marto marto is offline
Miembro
 
Registrado: may 2003
Ubicación: Barcelona, Catalunya
Posts: 882
Poder: 24
marto Va por buen camino
Wop!

Juan Antonio, creo que te pasas de prudente: lo que comentas no es una opinión, sencillamente es así.
Solamente se me ocurren dos situaciones en las que pueda ser más rápido un Locate que una query (hablando de servidores, claro): o bien te has tenido que bajar previamente TODA la tabla por algun oscuro motivo que no logro imaginar (y pese a todo tendría que ser una tabla no demasiado grande), o bien se tendría que tratar de una tabla muy pequeña (pero mucho eh! ).
Lo que sucede es que mucho me parece a mí que el compañero está trabajando con TTable, y claro, si empiezas mal los planos... seguro que no te sale un palacio (con todos los respetos).

Por otro lado, ni hacer un locate ni lanzar una query me parece un método serio o seguro para controlar duplicidades, ya que si el sistema soporta concurrencia nadie nos asegura que ese valor no se haya introducido en otra transacción aun sin confirmar.
__________________
E pur si muove

Última edición por marto fecha: 15-07-2004 a las 16:51:37.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 11:52:32.


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