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

Duda relación tablas

Estas en el tema de Duda relación tablas en el foro de Mysql en Foros del Web. Hola buenas de nuevo, Tengo la siguiente duda: Quiero realizar una relación que me permita vinsular usuarios con grupos, pero para eso, el administrador del ...
  #1 (permalink)  
Antiguo 01/05/2011, 12:59
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 15 años, 9 meses
Puntos: 165
Duda relación tablas

Hola buenas de nuevo,

Tengo la siguiente duda:

Quiero realizar una relación que me permita vinsular usuarios con grupos, pero para eso, el administrador del grupo, tiene que permitir el acceso a este.

Como hago la relación?

usuarios, grupos, usuarios_a_grupos (N:M), y.. en la tabla grupos pongo la clave? y después, como mantengo una petición en pendiente? pongo en la tabla intermedia un campo activa?

Un saludo y gracias!
  #2 (permalink)  
Antiguo 01/05/2011, 13:31
Avatar de 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, 4 meses
Puntos: 2658
Respuesta: Duda relación tablas

No explicas qué tiene que ver el administrador con los usuarios y sus grupos.
Tampoco estás explicando qué es una petición en tu sistema, para qué sirve ni quién se la emite a quién.

Respecto a la clave, si te refieres a la clave de login del usuario, eso es un atributo del usuario y le pertenece a cada usuario, porque se supone que es única de ese usuario. No puede ir en GRUPO ni en GRUPO_USUARIO, porque en el primer caso sería una clave general del grupo para cada uno de los miembros de un grupo, y en el segundo, permitiría usar una clave distinta al usuario, por cada uno de los grupos a los que pertenece.
Eso es algo que tienes que definir tu, conforme lo requiera tu sistema (lo que se denomina reglas de negocio).
Si existe algo que se denomine "peticion", entonces es algo que emite un usuario y dirigido a alguien. Eso se debe almacenar en una tabla que administre las peticiones (tú sabrás qué es y para qué sirve). En ese caso, el hecho que esté o no pendiente, significa que una petición tiene estados, y si debe mantenerse como información puede necesitarse un campo para ello, pero no es la única forma de manejarlo. Hay otras. Para aconsejarte habría que saber para qué y cómo funciona tu sistema y ver qué es lo más conveniente.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 01/05/2011, 13:50
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 15 años, 9 meses
Puntos: 165
Respuesta: Duda relación tablas

Hola buenas muchas gracias por tu tiempo.

Mi sistema quiere que un usuario pueda acceder a un determinado grupo de usuarios. Para acceder, un usuario con privilegios dentro del grupo, debe de darle acceso, creo que sin password.. es decir, debe de aceptar la petición de acceso al grupo.

Un saludo!
  #4 (permalink)  
Antiguo 01/05/2011, 14:13
Avatar de 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, 4 meses
Puntos: 2658
Respuesta: Duda relación tablas

Hay varias formas de manejar la cosa, pero en esencia lo más sencillo sería:
- Cuando el usuario ingresa al sistema, en general, debería pertenecer a un grupo de usuarios base, que exista en la lista, y que puedas denominar "Sin Privilegios".
- Este tipo de usuario simplemente se podría loguear, pero nada más (o hacer algunas cosas, según lo determines).
- Ese estado "pendiente" se logra en ese caso precisamente porque su tipo de usuario es "sin privilegios". Cuando el administrador consulta por los pendientes, se verifica ese estado. Puedes controlar la petición de grupo a nivel de aplicación, o a nivel de base.
- A nivel de base, requeriría que almacenases las peticiones en una tabla que el adminisitrador consulte.
- Si un usuario sólo puede pertenecer a un sólo grupo, el ID de grupo iría en la tabla Usuario (relación N:1), y la tabla USUARIO_GRUPO no debería existir.
- SI el usuario puede pertenecer a más d eun grupo, la tabla USUARIO_GRUPO se necesita y una vez atendida la petición, el administrador ingresaría en la tabla usuarios_grupo el registro correspondiente.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 01/05/2011, 14:28
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 15 años, 9 meses
Puntos: 165
Respuesta: Duda relación tablas

De acuerdo, intentaré adaptar este sistema.

Muchas gracias de neuvo y un saludo!

Etiquetas: tablas
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




La zona horaria es GMT -6. Ahora son las 16:34.