Ver Mensaje Individual
  #7 (permalink)  
Antiguo 10/11/2008, 05:45
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Creando base de datos

PK es el acrónimo de PRIMARY KEY o clave primaria.
FK lo es de FOREIGN KEY, o clave foránea (externa, extranjera o ajena, como quieras llamarla).

En lo que respecta del ejemplo, el problema debes resolverlo analizando el modelo del negocio (Análisis de Sistema básico): ¿El usuario SOLAMENTE puede ser o médico o administrativo? ¿No existe NINGUN caso en que la persona cumpla funciones de médico Y de administrativo? Entonces hazlo de esa forma.

Pero, si por cualquier razón el sistema requerirá a futuro un ajuste porque el rango de cargos de los usuarios se amplía (aunque fuese a un sólo cargo más), el modelo no te servirá. Tendrás que modificar la estructura de la tabla y resolver las inconsistencias de datos consecuentes A MANO.

Algunos sabios consejos que te dan los profesores:
- Tienes que preparar la base lo suficientemente flexible como para soportar todas las tonterías que puedan imaginar los programadores.
- Tienes que observar bien los datos que pretenden aportarte. Es posible que haya información relevante que no te están dando y después te pedirán que resuelvas.

Y el más fundamental:
- Diseña la base para el peor de los escenarios posibles. Siempre tendrás que agregar alguna cosa más, a último minuto, que a los analistas o a los programadores se les ocurrió.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)