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

Estructura de tablas

Estas en el tema de Estructura de tablas en el foro de Mysql en Foros del Web. Hola gente!, estoy haciendo una web en la cual un usuario se registra en una página y luego si quiere en otra puede subir fotos, ...
  #1 (permalink)  
Antiguo 09/09/2007, 12:51
 
Fecha de Ingreso: agosto-2007
Mensajes: 106
Antigüedad: 16 años, 7 meses
Puntos: 0
Estructura de tablas

Hola gente!, estoy haciendo una web en la cual un usuario se registra en una página y luego si quiere en otra puede subir fotos, por lo que necesito crear una base de datos. He hecho una...pero creo que no es eficiente.

En principio mi base de datos tenía 2 tablas. La primera llamada 'usuarios' con los campos id_usuario, usuario, email y password. Y la segunda tabla llamada 'album' tenía los campos id_foto, id_usuario, nom_foto y descripción. En sql:

CREATE TABLE usuarios(
id_usuario INT NOT NULL AUTO_INCREMENT,
usuario VARCHAR(30) NOT NULL,
email VARCHAR(30) NOT NULL,
password VARCHAR(30) NOT NULL,
PRIMARY KEY (id_usuario)
) ENGINE=INNODB;

CREATE TABLE album(
id_foto INT NOT NULL AUTO_INCREMENT,
id_usuario INT NOT NULL,
nom_foto VARCHAR(255) NOT NULL,
descripcion TEXT,
PRIMARY KEY (id_foto),
INDEX iCodigoU (id_usuario),
FOREIGN KEY (id_usuario) REFERENCES usuarios(id_usuario) ON DELETE CASCADE
) ENGINE=INNODB;

Esta estructura no me convence ya que me gustaría por ejemplo que no hubieras usuarios repetidos, no su id_usuario, no se....

Me gustaría haber si alguien me puede dar alguna idea para que la base de datos este optimizada.

Muchas gracias!!!.
  #2 (permalink)  
Antiguo 10/09/2007, 09:27
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 18 años, 7 meses
Puntos: 19
Re: Estructura de tablas

Cita:
Iniciado por jmagago84 Ver Mensaje
Esta estructura no me convence ya que me gustaría por ejemplo que no hubieras usuarios repetidos, no su id_usuario, no se....
Yo no entendí esta parte.

Tal y como está la estructura de la tabla de usuarios, no debería de haber usuarios repeditos (por id) ya que tienes por clave primaria el propio id de usuario.
  #3 (permalink)  
Antiguo 10/09/2007, 10:20
 
Fecha de Ingreso: agosto-2007
Mensajes: 106
Antigüedad: 16 años, 7 meses
Puntos: 0
Re: Estructura de tablas

Me refiero a que id_usuario es solo un número que añade la base de datos automaticamente cada vez que se registra un nuevo usuario...pero si ahora llega otro usuario con el mismo nombre pues se repetiría y así no me gustaría tenerlo.

¿Se os ocurre alguna manera de poder hacerlo bien?, para que no haya confusiones en la tabla y en su relación?.

Gracias!.
  #4 (permalink)  
Antiguo 10/09/2007, 10:29
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 18 años, 7 meses
Puntos: 19
Re: Estructura de tablas

Podrías utilizar la cláusula UNIQUE para ese campo para tener un control a nivel de base de datos. Pero vamos, yo haría una consulta a la BD antes de insertar un nuevo usuario para ver si existe otro con ese mismo nombre.
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 08:38.