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

como hariais esto?

Estas en el tema de como hariais esto? en el foro de Bases de Datos General en Foros del Web. Buenas, estoy empezando con esto de las BD y no tengo muxa idea. El caso es que quiero almacenar informacion de los usuarios, tales como ...
  #1 (permalink)  
Antiguo 04/07/2005, 12:40
 
Fecha de Ingreso: febrero-2004
Mensajes: 67
Antigüedad: 20 años, 3 meses
Puntos: 0
como hariais esto?

Buenas, estoy empezando con esto de las BD y no tengo muxa idea.

El caso es que quiero almacenar informacion de los usuarios, tales como su nombre, sexo, edad y su localizacion. El problema es que no se como hacer lo de la localizacion, que es el pais donde vive y si es español (la mayoria de los usuarios) ademas poner la comunidad autonoma (Catalunya, Madrid, etc.)

Lo que se me ha ocurrido es crear en la tabla USUARIOS un campo PAIS y otro COMUNIDAD pero eso me parece un poco estupido, ya que al ser la mayoria españoles el campo PAIS siempre sera igual y si no es español el campo COMUNIDAD se queda vacio. De esta forma cuando haga consultas para saber de donde es, tengo que mirar los dos campos, cuando mirando solo el COMUNIDAD podria saber directamente que es español si no esta vacio, pero si esta vacio no sabria de que pais es sin mirar el PAIS.

¿Como lo diseñariais vosotros?
  #2 (permalink)  
Antiguo 04/07/2005, 15:08
 
Fecha de Ingreso: enero-2004
Mensajes: 310
Antigüedad: 20 años, 3 meses
Puntos: 0
Tabla USUARIO:
PK_ID, Nombre, Sexo, Edad, Localizacion, FK_IdPais, FK_IdComunidad
Tabla Pais:
PK_ID, Pais
Tabla Comunidad:
PK_ID, Comunidad
__________________
Un saludo,
Trucos
Videos
  #3 (permalink)  
Antiguo 05/07/2005, 13:48
 
Fecha de Ingreso: julio-2003
Ubicación: España
Mensajes: 723
Antigüedad: 20 años, 9 meses
Puntos: 0
Yo lo pondría así:

Tabla USUARIO:
PK_ID, Nombre, Sexo, Edad, Localizacion, FK_IdPais

Tabla Pais:
PK_ID, Pais,FK_IdComunidad

Tabla Comunidad:
PK_ID, Comunidad

No tiene sentido poner país y comunidad en la tabla usuarios.

Saludos.
__________________
Solo nosotros podemos decidir qué hacer con el tiempo que se nos ha dado. (Gandalf)
  #4 (permalink)  
Antiguo 05/07/2005, 16:54
 
Fecha de Ingreso: febrero-2004
Mensajes: 67
Antigüedad: 20 años, 3 meses
Puntos: 0
sigo sin verlo claro jeje Yo solo quiero saber la comunidad en el caso de que el usuario sea español, si no es español solo quiero el pais. Como lo has puesto djnelson, en la tabla pais todos los paises que no son españa tendran el campo IdComunidad vacio y eso no seria bueno no?
  #5 (permalink)  
Antiguo 07/07/2005, 05:44
 
Fecha de Ingreso: febrero-2004
Mensajes: 67
Antigüedad: 20 años, 3 meses
Puntos: 0
A ver que os parece esta solucion:

Tabla USUARIOS:
PK_ID, Nombre, Sexo, Edad, FK_Zona

Tabla ZONAS:
PK_ID, Zona

En la tabla zonas meteria en las 17 primeras filas las 17 comunidades autónomas de España y en las siguientes filas el resto de paises. Sería algo así:

tabla ZONAS ----------------------------
-----------------------------------------
PK_ID ZONA
1 Andalucía
2 Aragón
3 Asturias
4 Islas Baleares
5 País Vasco
... ...
17 Comunidad Valenciana
18 Alemania
19 Francia
... ...

De esta forma para consultar de donde es un usuario solo tendría que mirar su campo FK_Zona, si este valor es menor de 18 sabría directamente que es español y además su comunidad, y si es mayor sabría que no es español y de que pais es.

¿Os parece una buena solucion o le veis algun problema? Ya os digo que es la primera tabla que hago en mi vida jeje
  #6 (permalink)  
Antiguo 07/07/2005, 14:06
 
Fecha de Ingreso: julio-2003
Ubicación: España
Mensajes: 723
Antigüedad: 20 años, 9 meses
Puntos: 0
Bueno, si el campo de la comunidad está vacío simplemente quiere decir que no hay comunidad, ni es bueno ni malo.

Como lo puso Dynk no me gusta ya que no hay correlación entre el país y la comunidad, es decir, se podría poner Holanda como país y Extremadura como comunidad sin problema alguno...

Y en tu solución me parece algo cutre mezclas comunidades con países... pero funcionaría...

Saludos.
__________________
Solo nosotros podemos decidir qué hacer con el tiempo que se nos ha dado. (Gandalf)
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 02:12.