Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/05/2013, 11:42
pithon
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años
Puntos: 10
tablas relacionas en mysql aclarar conceptos

Hola necesito ayuda para poder relacionar tablas una vez las creo, con programas como mysql workbench consigo relacionarlas pero no me queda claro, tambien estube mirando la documentacion pero no me aclaro, pongo las tablas creadas por si me quereis ayudar a comprender como se relacionan.

se trata de 4 tablas usuario, perfil , aficiones y compatibles.

donde la tabla usuario tiene que ir relaciona con perfil y aficiones, teniendo estas dos las claves foraneas, y luego aficiones tiene que estar relaciona con compatibles la estructura la cree de esta forma pero no se si es correcta para hacer esta relacion de tablas.

Código MySQL:
Ver original
  1. CREATE TABLE IF NOT EXISTS `usuarios` (
  2.   `nick` char(10) NOT NULL,
  3.   `pwd` char(12) NOT NULL,
  4.   PRIMARY KEY (`id_usuario`),
  5. ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci AUTO_INCREMENT=1;
  6.  
  7. CREATE TABLE IF NOT EXISTS `perfil` (
  8.   `nombre` char(10) NOT NULL,
  9.   `edad` int unsigned NOT NULL,
  10.   PRIMARY KEY (`id_perfil`),
  11.   FOREIGN KEY (`id_usuario`),
  12. ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci AUTO_INCREMENT=1;
  13.  
  14. CREATE TABLE IF NOT EXISTS `aficiones` (
  15.   `id_aficiones` int unsigned NOT NULL AUTO_INCREMENT,
  16.   `ocio` char(10) NOT NULL,
  17.   PRIMARY KEY (`ocio`),
  18.   FOREIGN KEY (`id_usuario`),
  19.   UNIQUE (`id_aficiones`),
  20. ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci AUTO_INCREMENT=1;
  21.  
  22.  
  23. CREATE TABLE IF NOT EXISTS `compatibles` (
  24.   `id_compatibles` int unsigned NOT NULL AUTO_INCREMENT,
  25.   `ocio` char(10) NOT NULL,
  26.   `amigos` char(10) NOT NULL,
  27.   FOREIGN KEY (`ocio`),
  28. ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci AUTO_INCREMENT=1;


Aparte no se como tendria que hacerlo para crear esa relacion espero que me podais ayudar.

Saludos.