Ver Mensaje Individual
  #3 (permalink)  
Antiguo 07/11/2008, 07:19
quimfv
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Creando base de datos

Cita:
...
Caso 2:

USUARIO(DNI_usuario, Tipo_usuario, Nombre, Apellidos, Pais, CP,
Direccion, Poblacion, Provincia, Email, Fecha_nacimiento, Password, ID_Cargo)

CARGO(DNI_ID_CArgo, NombreCargo)

Este caso es más simple: Sólo cruza dos tablas. Pero un usuario sólo puede ser Administrativo o Medico. No ambos. La ventaja es Que sólo debes insertar a los usuarios y el cargo queda en ese momento establecido sin otro INSERT. La tabla CARGO , por su parte, se carga sólo una vez y sufre pocas modificaciones.
Habria una tercera solución más simple aún


USUARIO(DNI_usuario, Tipo_usuario, Nombre, Apellidos, Pais, CP,
Direccion, Poblacion, Provincia, Email, Fecha_nacimiento, Password, ID_Cargo)

Tipo_usuario fk referida a idTipousuario

TIPOUSUARIO(idTipo,NombreTipo)

TIPOUSUARIO
idTipo:NombreTipo
1:::::::Administrador
2:::::::Medico

o una cuarta más simple aún

USUARIO(DNI_usuario, Tipo_usuario, Nombre, Apellidos, Pais, CP,
Direccion, Poblacion, Provincia, Email, Fecha_nacimiento, Password, ID_Cargo)


donde se define Tipo_usuario como enum('Administrador','Medico') al crear la tabla.


Estas siempre para el caso en que un usuario puede ser de uno y solo un tipo.

Quim

Última edición por quimfv; 11/11/2008 a las 02:11