Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Esquema Entidad-Relacion

Estas en el tema de Esquema Entidad-Relacion en el foro de Mysql en Foros del Web. Buenos dias, estoy diseñando la base de datos de un gestor de trabajo (ERP) y tengo dudas de como plantear el diseño del esquema Entidad-Relación ...
  #1 (permalink)  
Antiguo 23/10/2008, 03:57
 
Fecha de Ingreso: octubre-2007
Mensajes: 14
Antigüedad: 16 años, 6 meses
Puntos: 1
Pregunta Esquema Entidad-Relacion

Buenos dias, estoy diseñando la base de datos de un gestor de trabajo (ERP) y tengo dudas de como plantear el diseño del esquema Entidad-Relación para despues crear las tablas.

Mi problema que tengo es con los usuarios del sistema. Es decir, tengo una tabla de usuarios, que son los que podrán entrar en la aplicación pero estos usuarios pueden ser o empleados de la empresa o clientes de la misma.

Los empleados de la empresa son los que estarán relacionados con proyectos, tareas, etc... y quiero relacionar los clientes con ventas, compras, etc...

La pregunta es, ¿Como es mas optimo implementar la base de datos?

OPCION 1: 3 tablas separadas:
- 1 para empleados
- 1 para clientes
- 1 para usuarios del sistema, con un campo tipo, q definira a cual hace referencia.

OPCION 2: 3 tablas: Semejante a la anterior, solo que la tabla usuarios en lugar de tener el campo tipo, tiene 2 claves foraneas: empleado_id, cliente_id, que hacen que dependiendo de la que tenga rellena, lo referenciará por ese id.

OPCION 3: 1 tabla (ESTA ES LA PEOR QUE VEO)
- Esta tabla tendra el campo tipo que lo definirá y dependiendo de este campo, hará referencia a las opciones que yo quiera


Realmente no veo como óptimas ninguna de las 3 opciones, espero que me aconsejen cual sería la mejor solución para este problema.

Un saludo.
  #2 (permalink)  
Antiguo 23/10/2008, 04:54
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 18 años, 7 meses
Puntos: 19
Respuesta: Esquema Entidad-Relacion

Yo elegiría la opción 1 por los siguientes motivos:

El campo 'tipo' de la tabla de usuarios te permitiría actuar sin que exista un registro en la correspondiente tabla de empleados o clientes.

Tener los empleados y los clientes separados, te permite optimizar los campos de las tablas si guardan información diferente.

Un saludo.
  #3 (permalink)  
Antiguo 01/01/2010, 19:01
 
Fecha de Ingreso: enero-2010
Mensajes: 1
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Esquema Entidad-Relacion

"Realmente no veo como óptimas ninguna de las 3 opciones, espero que me aconsejen cual sería la mejor solución para este problema."

La verdad tienes razón ninguna de las tres alternativas es óptima.Para optimizar la base de datos en este caso se puede crear tablas separadas para clientes, empleados, usuarioempleado y usuariocliente. Para optimizar aún mas se puede añadir las PerfilUsuarioempleado y Perfilusuariocliente relacionandolas de uno a muchos con la Tabla usuariocliente y usuarioempelado respectivamente.

Tablas:
Tabla1: Cliente
Tabla2: Empleado
Tabla3:Perfilusuariocliente
Tabla4 :Perfilusuarioempleado:
Tabla5 :Usuariocliente
Tabla6 :Usuarioempleado

De esta manera almacenas la informacion en forma ordenada y por separado de todos los usuarios del sistema en forma detallada.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 12:59.