Ver Mensaje Individual
  #3  
Antiguo 29-07-2003
Avatar de __marcsc
__marcsc __marcsc is offline
Miembro
 
Registrado: may 2003
Ubicación: Girona
Posts: 577
Reputación: 22
__marcsc Va por buen camino
Hola,

tal como yo lo veo un Master/Detail en Delphi no hace lo mismo que las relaciones de Access...

Las relaciones de access se encargan de mantener la integridad referencial, es decir, no permiten que exista una clave ajena que no exista en la tabla relacionada. El borrado en cascada es una manera de asegurar esto.

Sin embargo, lo que hacen las relaciones maestro/detalle de Delphi es filtrar del detalle todos los registros relacionados con el registro actual de la tabla maestra, independientemente de que haya una restricción de integridad referencial entre las dos tablas.

Con los lookup pasa lo mismo, si quieres puedes hacer un join entre dos tablas access, pero los lookups de Delphi son más flexibles, ya que te permiten ir a buscar un campo a un DataSet que no tiene porqué pertenecer a esa misma base de datos. El que sea mejor un lookup o un join dependerá de cada caso, aunque la mayoría de veces un lookup es más eficaz dado que está en el lado de la BD, evitándonos "código" adicional Delphi.

Por cierto, las consultas SQL que tengas definidas en Access te aparecerán desde Delphi como si fueran tablas. De hecho, puedes considerarlas como vistas.

Espero haberme explicado.

Saludos.

Última edición por __marcsc fecha: 29-07-2003 a las 21:36:06.
Responder Con Cita