[Php-avanzado] Normalización ejercicio 6
Leonardo Tadei - Pegasus Tech Supply
leonardot en pegasusnet.com.ar
Mie Jul 3 23:45:40 ART 2013
Hola Ariel,
El mié, 03-07-2013 a las 23:13 -0300, Ariel Fernández escribió:
> No termino de entender Leo, explicame un poco más de contexto por
> favor....
> quizá sea porque no entiendo nada de cómo es el sistema para la
> publicación de libros?.... :-(
En realidad es información sobre libros en general, y es la necesaria
para publicarlos o para el software de consultas y ventas de una
librería.
> y eso que lo hice tratando de adaptar el ejemplo que vimos en
> clase....
El ejemplo de clase era para ilustrar una relación N-N, entre libros y
autores. Eso se mantiene pero se agregan más elementos.
> Por ejemplo, la edición del libro, es el año, no? y eso no depende del
> libro?
No, las ediciones de un libro se numeran (1ra edición, 2da edición,
etc), tienen un año y una cantidad de ejemplares impresos (que no se
piden en el problema) y son hechas por una editorial.
Una editorial puede hacer una 1ra edición, ser comprada por otra
editorial, y esta otra editorial hacer una 2da edición.
Pasa mucho que una editorial publica una edición en un idioma y otra
distinta en otro idioma, etc.
Pasa también que dos editoriales publican el mismo libro, y un
interesado busca una de las versiones. No tiene nada que ver por ejemplo
el I Ching de Wilhelm editado por EDHASA que el que edita Kier. Ambos
libros tiene el mismo título.
Agarrá algún libro que tengas por ahí y fijate. Por ley va en la 2da
hoja.
> y la cantidad de libros ? es la cantidad publicada por la editorial, o
> la cantidad de libros que tiene la librería ? (asumo que es en
> Librería)
Es en la librería, que es el contexto del problema.
La parte del enunciado que dice "Cantidad de Libros en la Librería" da
una pista interesante ;-)
> Bueno, igual mando otra tentativa:
Esta normalización mejora para las consideraciones que expresás... lo
que no sé es si surgió por comprender el problema y la normalización, o
por ir corrigiendo las cosas en cada iteración.
La cosa que tenés mal son las críticas, porque son siempre a un libro
en concreto... y luego del libro tendrá autores.
Por ejemplo el libro "Los que aman, odia" escrito por Silvina Ocampo y
Bioy Casares tendrá una crítica, pero en tu modelo tendrías que poner la
crítica dos veces, porque este libro tiene 2 registros en la tabla
LibrosAutores
Hablando de normalización, la crítica no depende de esa clave primaria!
>
> Libros
>
> Autores
>
> Librerías
>
> Editoriales
> id
>
> id
>
> id
>
> id
> isbn
>
> nombre
>
> nombre
>
> nombre
> título
>
> apellido
>
> dirección
>
> id_pais
> edición
>
> id_pais
>
> id_pais
>
>
> id_editorial
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> LibrosLibrerías
>
> LibrosAutores
>
> LibrosCríticas
>
> Paises
> id
>
> id
>
> id
>
> id
> id_libro
>
> id_libro
>
> id_LibroAutor
>
> nombre
> id_librería
>
> id_autor
>
> detalle
>
>
> cantidad_libros
>
>
>
>
>
>
>
>
> Consideraciones:
> La crítica depende de un libro y autor en particular
> La cantidad de libros, es la cantidad que tiene una librería de un
> libro en particular
> Un libro tiene una editorial
> Interpreto que edición es el año, y depende del libro
>
>
> Espero haber mejorado un poco.
> Seguimos...
>
--
Leonardo Tadei
leonardot en pegasusnet.com.ar
Web: http://leonardo.tadei.com.ar
Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
Más información sobre la lista de distribución Php-avanzado