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

relacionar tablas phpMyAdmin

Estas en el tema de relacionar tablas phpMyAdmin en el foro de Mysql en Foros del Web. Hola, Tengo 5 o 6 tablas en la base de datos mysql, cada una tiene su primary key que estoy intentando relacionar con un campo ...
  #1 (permalink)  
Antiguo 25/09/2005, 05:24
 
Fecha de Ingreso: enero-2005
Mensajes: 19
Antigüedad: 19 años, 3 meses
Puntos: 0
relacionar tablas phpMyAdmin

Hola,
Tengo 5 o 6 tablas en la base de datos mysql, cada una tiene su primary key que estoy intentando relacionar con un campo de otra tabla. Estoy usando phpMyAdmin, pero no lo consigo, me dice que no tengo definido el índice que quiero relacionar con la PK de la otra tabla, pero en realidad sí son índices ya....
Alguna idea?

Gracias..!
  #2 (permalink)  
Antiguo 25/09/2005, 08:18
msi
 
Fecha de Ingreso: marzo-2005
Mensajes: 70
Antigüedad: 19 años, 1 mes
Puntos: 0
Por decirte algo, a mi me paso algo parecido y era porque mis tablas no eran del tipo InnoDB.

He visto que dependiendo de quien gestione mysql se crean de una manera u otra. Igual estoy equivocado pero las líneas siguientes se ejecutaban bien en mi servidor mysql local y en cambio daban error usando phpMyAdmin en un hosting.

CREATE TABLE TEMPORADAS (
TEMPORADA VARCHAR(10) NOT NULL,
PRIMARY KEY (TEMPORADA)
)
TYPE = InnoDB;


CREATE TABLE HISTORIALES (
HISTORIAL INTEGER UNSIGNED AUTO_INCREMENT NOT NULL,
TEMPORADA VARCHAR(10) NOT NULL,
EQUIPO VARCHAR(45) NOT NULL,
DNI VARCHAR(10) NOT NULL,
PRIMARY KEY (HISTORIAL),
FOREIGN KEY (TEMPORADA) REFERENCES TEMPORADAS (TEMPORADA) ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY (EQUIPO) REFERENCES EQUIPOS (EQUIPO) ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY (DNI) REFERENCES ENTRENADORES (DNI) ON DELETE CASCADE ON UPDATE CASCADE
)
TYPE = InnoDB;


Tuve que añadir una líneas para que no me diesen error usando phpMysqlAdmin:

CREATE TABLE HISTORIALES (
HISTORIAL INTEGER UNSIGNED AUTO_INCREMENT NOT NULL,
TEMPORADA VARCHAR(10) NOT NULL,
EQUIPO VARCHAR(45) NOT NULL,
DNI VARCHAR(10) NOT NULL,
PRIMARY KEY (HISTORIAL),
INDEX INDX_TEMP (TEMPORADA),
INDEX INDX_EQUIP (EQUIPO),
INDEX INDX_ENTRE (DNI),
FOREIGN KEY INDX_TEMP (TEMPORADA) REFERENCES TEMPORADAS (TEMPORADA) ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY INDX_EQUIP (EQUIPO) REFERENCES EQUIPOS (EQUIPO) ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY INDX_ENTRE (DNI) REFERENCES ENTRENADORES (DNI) ON DELETE CASCADE ON UPDATE CASCADE
)
TYPE = InnoDB;

Espero que te sirva de algo.
  #3 (permalink)  
Antiguo 25/09/2005, 15:48
 
Fecha de Ingreso: enero-2005
Mensajes: 19
Antigüedad: 19 años, 3 meses
Puntos: 0
Funcionó! Muchas gracias!
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 00:34.