Búsqueda en 3 tablas

Hola experto, quiero hacer un pequeño sistema de búsqueda de biblioteca, el cual contiene las siguientes tablas:
- Referencia Bibliográfica (Libros)
- Ficheros (archivos electrónicos)
- Conferencias Magistrales (Eventos)
Estos pertenecen a un mismo tipo.. Pero quisiera que al buscar bote resultados de los 3 tipos...
En común las 3 tablas tienen Código, Tema o Temática, Autor o Ponente, Titulo o Ponente y Resumen...
Cada tabla contiene sus propias características...
Si me pudieras ayudar a normalizarlas...
Lo descargas aquí..
http://es.geocities.com/miguelbjaimes/biblioteca.mdb
Respuesta
1
Están bien así. En cuanto a tu base de datos, el enlace no funciona. Unificar las tres tablas no es del todo posible si tienen características diferentes. A lo sumo podrías crear una tabla con los atributos comunes y dejar las otras tres con los atributos particulares de cada una. Como es una especialización disjunta (un libro no puede ser un archivo electrónico o un evento simultáneamente), puedes usar una clave externa que apunte desde cada tabla a la clave primaria de la unificada. De ete modo cuando hagas búsquedas por alguno de los atributos comunes, sólo tienes que hacer una reunión de la unificada con las otras tres.

1 respuesta más de otro experto

Respuesta
1
Lo que te comento lo implementas en visual basic y extrayendo los datos de tu base de datos.
Select codigo_libros as codigo from libros
union all
select codigo_fichero as codigo from ficheros
union all
select codigo_conferencia as codigo from conferencias
Tu base la veo bien, pero debes de considerar todos los tipos de datos que puedes tener dentro de la misma y aplicar las reglas de normalización cuando así se requieran.
Gracias recién lo voy a probar... pero la aplicación lo quiero hacer en Visual Basic... y hacer una búsqueda donde te bote resultado de cada tabla..
Libros: "n" resultados
Ficheros: "n" resultados
Conferencias: "n" resultados.
En cuanto a la segunda pregunta deseo normalizar las tablas por si existe alguna redundancia... porsicaso lo revisa... le dije que lo bajara para que lo chequee... gracias de antemano
Si las tres tablas son similares tienes que realizar un select con una igualación de campos que sean diferentes a uno similar, ejemplo: codigo_clave as código, codigo_libro as código.
Con la segunda pregunta que es lo que deseas de normalizar.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas