[Php-avanzado] Eje 01_03_04 ejercicio clase 8

Leonardo Tadei - Pegasus Tech Supply leonardot en pegasusnet.com.ar
Lun Jun 21 15:57:07 ART 2010


Hola Bruno,

El lun, 21-06-2010 a las 17:17 +0000, br1 meschini escribió:
> hola leo, copio de nuevo estos tres .
> saludos...
> 
> 
> 1) Crear las tablas necesarias en tercera forma normal para guardar
> los
> siguientes datos: Nombre, Apellido, Fecha de Nacimiento, Dirección,
> Teléfono, e-mail, Ciudad, Código Postal, Provincia, País, Consulta
> Realizada (pregunta), Respuesta a la Consulta, Estado de la Consulta
> (Pendiente, Respondida, Descartada)
> 
> PERSONAS
> id_persona
> nombre
> apellido
> fecha de nacimiento
> dirección
> telefono
> email
> id_ciudad
> 
> 
> CIUDADES
> id_ciudad
> ciudad
> id_provincia
> 
> 
> PROVINCIAS
> id_provincia
> provincia
> id_pais
> 
> PAISES
> id_pais
> pais
> 
> CONSULTAS
> id_persona
> id_consulta
> consulta
> respuesta
> id_estado
> 
> 
> ESTADO CONSULTA
> id_estado
> estado

	Correcto!

> 3) Crear las tablas necesarias en tercera forma normal para guardar
> los
> siguientes datos: Nombre, Apellido, Dirección, Teléfono, e-mail,
> Pedidos, Valor del Pedido, Items del Pedido, Pago del pedido.

	Este modelo está bien, pero no tiene en cuenta una cosa. La tabla de
Productos representa una "lista de precios", y la tabla ItemsDelPedido
representa las cosas pedidas.
	Tus tablas no reflejan el hecho de que un pedido "es una cosa que pasa
en un momento" y en cambio la lista de precios es algo que puede cambiar
para reflejar cambios de precios y cambios de nombres.
	La cuestión es que si en ItemsDelPedido tenés una referencia a los
Productos, cuando se actualicen los productos, vas a "cambiar el
pasado", porque los pedidos fueron hechos con datos del momento.

	La solución a esto es repetir en ItemsDelPedido el nombre y el valor.
Sin embargo esto no es una repetición, técnicamente hablando, porque en
Productos representa "el ahora" y en ItemsDelPedido representa "en este
pedido".

	Se entiende?

> PRODUCTOS
> id_producto
> nombre_producto
> valor_producto
> 
> 
> ITEMS DEL PEDIDO
> id_item 
> cantidad
> id_producto
> id_pedido
> 
> 
> PEDIDOS
> id_pedido
> id_cliente
> pago del pedido
> 
> 
> CLIENTES
> id_cliente
> Nombre
> Apellido
> Dirección
> Teléfono
> e-mail
> 
> 
> 
> 
> 
> 
> 4) Crear las tablas necesarias en tercera forma normal para guardar
> los
> siguientes datos: nombres del paciente, apellidos del paciente, fecha
> de
> la consulta, médico que lo atendió (nombre, apellido y especialidad),
> notas de la consulta, centro de salud (nombre, dirección, ciudad)
> 
> 
> 
> 
> CONSULTAS
> id_consulta
> fecha
> nota
> id_paciente
> id_medico
> id_centro
> 
> 
> PACIENTES
> id_paciente.
> nombre
> apellido
> 
> 
> 
> MEDICOS
> id_medico
> nombre
> apellido
> id_especialidad
> 
> ESPECIALIDADES
> Id_especialidad
> especialidad
> 
> 
> CENTROS DE SALUD
> id_centro
> dirección
> id_ciudad
> 
> 
> CIUDADES
> id_ciudad
> ciudad

	Correcto!
-- 

Leonardo Tadei
leonardot en pegasusnet.com.ar
http://blog.pegasusnet.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