[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