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

Duda con valores

Estas en el tema de Duda con valores en el foro de Mysql en Foros del Web. Hola! Podrían ayudarme por favor? Me gustaría saber cómo puedo ingresar varios registros dentro de un sólo campo. Tengo esto: Tabla user id name user ...
  #1 (permalink)  
Antiguo 22/01/2010, 19:17
 
Fecha de Ingreso: enero-2010
Mensajes: 44
Antigüedad: 9 años, 11 meses
Puntos: 0
Duda con valores

Hola! Podrían ayudarme por favor?

Me gustaría saber cómo puedo ingresar varios registros dentro de un sólo campo.

Tengo esto:


Tabla user

id
name
user
pass

Tabla admin

id
name
user
pass
add


Lo que quiero hacer es, al campo "add" de la tabla admin agregarle más de un valor para que al momento en que se haga una consulta saber que cierto número de usuarios están a cargo de un administrador.
Pero no sé cómo empezar, o sea, no sé con qué valor crear los campos de la tabla para que esto pueda realizarse o si hay un método más fácil.

Ojala puedan orientarme, se los agradecería mucho.

De antemano muchas gracias.
Saludos.
  #2 (permalink)  
Antiguo 22/01/2010, 20:11
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.321
Antigüedad: 12 años
Puntos: 2653
Respuesta: Duda con valores

Bueno, carlosalas, el tema es que no se deben, ni se pueden poner campos multivaluados en una base de datos relacional. Eso es una violación flagrante del modelo E-R, y el problema que debes resolver no se maneja de esa forma.
El tema es simple. Tienes tres opciones:
1) Si tienes dos entidades, Administrador y Usuario, que definen la existencia de dos tablas físicas, y que tienen una relación N:N, esta relación determina la existencia de una tercera tabla que contiene las claves primarias (PK) de ambas tablas como PK (puede que con un atributo más), determinando de esa forma qué usuarios son manejados por qué administrador.
2) Si en el modelo no hubiese mas que un Administrador, entonces tienes dos tablas y la relación sería 1:N y la PK del Administrador va como clave foránea (FK) en cada registro de cada usuario.
3) Si un usuario puede ser al mismo tiempo Administrador de un grupo de usuarios, entonces tienes también una relación 1:N, y una sola tabla, donde la PK del Administrador va como FK de los usuarios administrados, y él es el único que tiene ese campo en NULL.

¿Se comprende la idea?
__________________
¿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 23/01/2010, 13:35
 
Fecha de Ingreso: enero-2010
Mensajes: 44
Antigüedad: 9 años, 11 meses
Puntos: 0
Respuesta: Duda con valores

mm eso creo.. no entendí bien lo de las PK y FK

Los admins están divididos en áreas.
Las áreas pueden ser compartidas, o sea, 3 ó más admins pueden estar dentro de la misma.
Dentro de esas áreas están los usuarios pero también los usuarios pueden compartir las áreas.

Entonces 4 admins están a cargo de un mismo usuario pero cada quien en su propia área, entonces sólo podrán agregar, modificar y/o eliminar el campo que les corresponde. No más.

Ahora me doy cuenta que necesito áreas, entonces puedo crear una tabla llamada áreas pero no sé que campos crear ohh estoy perdido.

Lo siento.
Gracias por tu respuesta por cierto.

Saludos.
  #4 (permalink)  
Antiguo 23/01/2010, 14:42
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.321
Antigüedad: 12 años
Puntos: 2653
Respuesta: Duda con valores

Si no sabes qué son las claves primarias y claves foráneas (PK y FK), entonces no has visto nada del modelo relacional y te están faltando detalles básicos que te van a traer problemas.
Tendrías que leer estos temas antes de avanzar más:
FAQs de Bases de Datos

Yademás:
Bases de Datos
Bases de Datos Relacional
Modelo Relacional
Modelo Entidad-Relación

y eventualmente:
Formas Normales
Esta última se aplica mejor cuando ya se entiende lo anterior.

En cuanto a tu problema, cuando aplicas el modelo relacional te das cuenta que tienes las siguientes tablas:
Administrativo(id_adm, ...)
Area(id_area, ...)
Administrativo_Area(id_adm, id_area, ...)
Usuario(id_usuario)
Usuario_Administra(id_usuario, id_adm, ...)

En cuanto a los campos, (denominados atributos en el modelo ER), estos deben ser todos los datos que hacen a la identidad de esa entidad. O sea, lo que le da existencia como objeto.
Para que se entienda un poco: Un área tiene una denominación, un identificador, un lugar asignado, puede tener una categoría, debe tener un responsable o jefe activo y puede que algunas cosas más.
No tiene empleados o personal como atributo, porque estos surgen como atributo de la relación entre las dos entidades, y las relaciones no son atributos. Son relaciones. En todo caso las relaciones pueden tener sus propios atributos y como consecuencia, las relaciones en esos casos se transforman, a nivel de tablas, en una tabla propia.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: Ninguno
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 17:43.