[Php-avanzado] Tablas

Leonardo Tadei - Pegasus Tech Supply leonardot en pegasusnet.com.ar
Jue Mar 3 20:25:06 ARST 2011


Hola Marco!

	es un gran avance sobre la versión anterior.
	Felicitaciones!

	Te paso unas correcciones, posiblemente las últimas:

	Para la relación 1-N de las Películas con sus Lenguajes, Actores, y
Directores, las tablas y las relaciones del lado N están bien, pero
ahora te sobra en Películas el capo que hace referencia, ya que la
referencia es justamente esa otra tabla.


Peliculas
idPeliculas
idAlquilada
Año
idCalificación
idClasificacion
Duración
idPeliculasActores
idGenero
LenguajeOriginal
PrecioAlquiler
PrecioCompra
idTituloPelicula

	Por otra parte, no entiendo la justificación para sacar el Título de la
Película a otra tabla, porque es un dato que depende directamente de la
clave primaria. Esto te hará modificar la estructura de
EjemplaresPelícula.

	Para terminar, fijate que en Película tenés un id_alquilada, pero con
este esquema no alquilarás Películas, sino Ejemplares en concreto...
pero ese campo tampoco va en la tabla de Ejemplares

	La tabla de Alquileres tiene que tener los datos del alquiler: nro de
socio, nro de ejemplar, fecha del alquiler (y un ID para seguir con tu
forma de poner claves primarias artificiales).
	Pero a su vez, si mantenés solo una referencia al socio, si en el
futuro el socio del nombre cambia (por una corrección) o la dirección
y/o teléfono porque se mudó, estás "cambiando el pasado". Para este
escenario, tenés que repetir los datos relevantes del socio en la tabla
de Aquileres, y no es técnicamente una repetición, porque estás
almacenando los datos históricos del momento en que fue el alquiler...
posiblemente también convenga guardar acá el nro de ejemplar y título de
la película, para que si se destruye o vende en el futuro, no se pierdan
datos.
	(vimos esto en clase con el ejemplo de facturas de venta y los datos
del cliente)

	Si querés y te sirve más, en vez de explicarte esto en términos del
problema, te lo puedo repetir en términos de las 3 formas normales, que
es la base para llegar a esto.

	Saludos!

El mié, 02-03-2011 a las 11:39 -0300, Marco Frontini escribió:
> Hola Le, envio tabla corregida;
>  
> TABLAS
> 
> Directores
> 
> idDirector
> Nombre
> Apellido
> FechaNacimiento
> 
>  
> Actores
> 
> idActores
> Nombre
> Apellido
> FechaNacimiento
> 
> 
> 
> LenguajesDisponibles
> 
> idLenguajes
> Lenguajes
> 
>  
>  
> Generos
> 
> idGenero
> Genero
> 
>  
> Calificacion
> 
> idCalificacion
> Calificacion
> 
>  
> Clasificacion
> 
> idClasificacion
> Clasificacion
> 
>  
> LenguajesPeliculas
> 
> idLenguajesPeliculas
> idTituloPelicula
> idLenguajes
> 
>  
> TituloPelicula
> 
> idTituloPelicula
> TituloPelicula
> 
>  
> PeliculasActores
> 
> idPeliculasActores
> idTituloPelicula
> idActores
> 
>  
> PeliculasLenguajes
> 
> idPeliculasLenguajes
> idPeliculas
> idLenguajes
> 
>  
> Peliculas
> 
> idPeliculas
> idAlquilada
> Año
> idCalificación
> idClasificacion
> Duración
> idPeliculasActores
> idDirector.
> idGenero
> LenguajeOriginal
> idLenguajesPeliculas
> PrecioAlquiler
> PrecioCompra
> idTituloPelicula
> 
>  
> Socios
> 
> idSocio
> Nombre
> Apellido
> Telefono
> Domicilio
> Documento
> Sexo
> Fecha de nacimiento
> Fecha registro
> Personas habilitadas
> 
>  
> EjemplaresPelicula
> 
> idEjemplaresPelicula
> idTituloPelicula
> NumeroEjemplar
> FechadeCompra
> 
>  
> Alquileres
> 
> idAlquilada
> idEjemplaresPelicula
> idSocio
> 
>  
> A ver como esta.
> Saludos.
> Marco.
>  
> > From: leonardot en pegasusnet.com.ar
> > To: php-avanzado en pato2.fi.mdp.edu.ar
> > Date: Thu, 24 Feb 2011 16:53:42 -0300
> > Subject: Re: [Php-avanzado] Tablas
> > 
> > Hola Marco!
> > 
> > ando con demoras en las respuestas... veamos:
> > 
> > Hasta la tabla Clasificación se ve bien.
> > 
> > La tabla Películas tiene algunos problemas: estamos de acuerdo en
> que
> > la relación con Calificación y Clasificación es 1-a-1, y por tanto
> un
> > campo en Películas refiere al registro de la otra tabla.
> > Pero Actores, si tal como sugiere el campo y marcaste en tu SRS, van
> a
> > ser varios, con lo que ahí tenés una relación 1-N, que necesita otra
> > tabla para ser representada.
> > Ta pasa lo mismo con los Lenguajes de la pélicula, y no hace falta
> pero
> > también pasa con las que tienen más de un director.
> > 
> > Con esto, definís la Película en sí, pero como según tu SRS vas a
> > manejar varios ejemplares de una Película, ahí también vas a
> necesitar
> > otra tabla que relacione a un ejemplar en concreto con la Película a
> la
> > que corresponde. En la tabla de EjemplaresPelícula habría 3 campos
> como
> > mínimo: el ID, uno para el nro del ejemplar, y otro para la
> referencia a
> > la Película... si bien un ejemplar podría tener más datos como fecha
> de
> > compra o el estado en que se encuentra.
> > 
> > Lo que tampoco veo es una tabla para guardar los Alquileres de un
> > Ejemplar por cada Socio...
> > 
> > Seguimos!
> > 
> > El mar, 22-02-2011 a las 09:56 -0300, Marco Frontini escribió:
> > > Las paso de nuevo,
> > > TABLAS
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > Directores
> > > Actores
> > > LenguajesDisponibles
> > > Generos
> > > Calificacion
> > > Clasificacion
> > > Peliculas
> > > Socios
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > idDirector
> > > idActores
> > > idLenguajes
> > > idGenero
> > > idCalificacion
> > > idClasificacion
> > > Alquilada
> > > idSocio
> > > Nombre
> > > Nombre
> > > Lenguajes
> > > Genero
> > > Calificacion
> > > Clasificacion
> > > Año
> > > Nombre
> > > Apellido
> > > Apellido
> > > 
> > > 
> > > 
> > > 
> > > idCalificación
> > > Apellido
> > > FechaNacimiento
> > > FechaNacimiento
> > > 
> > > 
> > > 
> > > 
> > > idClasificacion
> > > Telefono
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > Duración
> > > Domicilio
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > idActores
> > > Documento
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > idDirector.
> > > Sexo
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > idGenero
> > > Fecha de
> > > nacimiento
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > idPeliculas
> > > Fecha
> > > registro
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > LenguajeOriginal
> > > Personas
> > > habilitadas
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > idLenguajesDisponibles
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > PrecioAlquiler
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > PrecioCompra
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > > TituloPelicula
> > > 
> > > 
> > > 
> > > Saludos.
> > > Marco.
> > > 
> > > 
> > > > From: leonardot en pegasusnet.com.ar
> > > > To: php-avanzado en pato2.fi.mdp.edu.ar
> > > > Date: Tue, 22 Feb 2011 07:22:11 -0300
> > > > Subject: Re: [Php-avanzado] Tablas
> > > > 
> > > > Hola Marco.
> > > > 
> > > > No recibí nada tuyo por la lista.
> > > > Fijate que lo hayas enviado, y si lo enviaste, que sea desde la
> > > > dirección que estás subscripto y que el total del mensaje no
> supere
> > > los
> > > > 60 u 80K que es el límite de tamaño de la lista.
> > > > (el servidor de listas te informa el motivo del rechazo)
> > > > 
> > > > 
> > > > El mar, 22-02-2011 a las 00:17 -0300, Marco Frontini escribió:
> > > > > Hola Leo, habras podido mirar las tablas?
> > > > > Saludos.
> > > > > Marco.
> > > > > 
> > > > > _______________________________________________
> > > > > Php-avanzado mailing list
> > > > > Php-avanzado en pato2.fi.mdp.edu.ar
> > > > >
> http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> > > > 
> > > > -- 
> > > > 
> > > > Leonardo Tadei
> > > > leonardot en pegasusnet.com.ar
> > > > http://blog.pegasusnet.com.ar
> > > > Firma pública:
> http://www.pegasusnet.com.ar/LeonardoTadei-public.key
> > > > 
> > > > _______________________________________________
> > > > Php-avanzado mailing list
> > > > Php-avanzado en pato2.fi.mdp.edu.ar
> > > > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> > > _______________________________________________
> > > Php-avanzado mailing list
> > > Php-avanzado en pato2.fi.mdp.edu.ar
> > > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> > 
> > -- 
> > 
> > 
> > Leonardo Tadei
> > leonardot en pegasusnet.com.ar
> > Pegasus Tech Supply
> > Tel: (+54)(+223) 471-2880
> > La Salle 1131 - Mar del Plata - Argentina
> > http://www.pegasusnet.com.ar / http://blog.pegasusnet.com.ar
> > http://www.prometeustech.com.ar / http://www.grupopegasus.com
> > Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
> > 
> > 
> > _______________________________________________
> > Php-avanzado mailing list
> > Php-avanzado en pato2.fi.mdp.edu.ar
> > http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado
> _______________________________________________
> Php-avanzado mailing list
> Php-avanzado en pato2.fi.mdp.edu.ar
> http://www3.fi.mdp.edu.ar/cgi-bin/mailman/listinfo/php-avanzado

-- 


Leonardo Tadei
leonardot en pegasusnet.com.ar
Pegasus Tech Supply
Tel: (+54)(+223) 471-2880
La Salle 1131 - Mar del Plata - Argentina
http://www.pegasusnet.com.ar / http://blog.pegasusnet.com.ar
http://www.prometeustech.com.ar / http://www.grupopegasus.com
Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
                



Más información sobre la lista de distribución Php-avanzado