Tablas vinculadas
Publicado por pedrosan (1 intervención) el 17/10/2003 20:38:33
Llevo poco tiempo manejando PHP y MySQL, y no termino de resolver un problemilla con las claves ajenas. Empecé usando una versión de MySQL inferior a 4.x, y al crear las tablas no me daba ningún problema definiendo las tablas como de tipo INNODB, pero no me hacía ni caso cuando se suponía que debía hacer los borrados en cascada.
Ya vi por ahí que la versión que yo tenía de MySQL no soportaba claves ajenas, así que me he bajado la 4.0.12. Ahora se supone que debería hacerlo bien, pero resulta que ni siquiera me deja crear las tablas con claves ajenas (las otras tablas, sí). Debajo me aparece un error que ya me aparecía antes:
"Error
Las opciones adicionales para trabajar con tablas vinculadas fueron desactivadas. Para saber porqué, dé clic aquí. "
lo que me lleva a unas instrucciones indescifrables para mí. Como puedo reactivar estas opciones? ¿Por qué me casca al crear una tabla INNODB ahora si antes no me fallaba?
Os pongo un ejemplo de creación de tabla que me falla (los campos de referencia y todo eso están bien):
CREATE TABLE COMPONENTE_PROVEEDOR (
ID_COMPONENTE INT NOT NULL,
ID_PROVEEDOR INT NOT NULL,
PRECIO_COMPRA REAL,
PRIMARY KEY (ID_COMPONENTE, ID_PROVEEDOR),
FOREIGN KEY (ID_COMPONENTE) REFERENCES COMPONENTE(ID_COMPONENTE) ON DELETE CASCADE,
FOREIGN KEY (ID_PROVEEDOR) REFERENCES PROVEEDOR(ID_PROVEEDOR) ON DELETE CASCADE
) TYPE=INNODB;
Muchas gracias de antemano y un saludo
Ya vi por ahí que la versión que yo tenía de MySQL no soportaba claves ajenas, así que me he bajado la 4.0.12. Ahora se supone que debería hacerlo bien, pero resulta que ni siquiera me deja crear las tablas con claves ajenas (las otras tablas, sí). Debajo me aparece un error que ya me aparecía antes:
"Error
Las opciones adicionales para trabajar con tablas vinculadas fueron desactivadas. Para saber porqué, dé clic aquí. "
lo que me lleva a unas instrucciones indescifrables para mí. Como puedo reactivar estas opciones? ¿Por qué me casca al crear una tabla INNODB ahora si antes no me fallaba?
Os pongo un ejemplo de creación de tabla que me falla (los campos de referencia y todo eso están bien):
CREATE TABLE COMPONENTE_PROVEEDOR (
ID_COMPONENTE INT NOT NULL,
ID_PROVEEDOR INT NOT NULL,
PRECIO_COMPRA REAL,
PRIMARY KEY (ID_COMPONENTE, ID_PROVEEDOR),
FOREIGN KEY (ID_COMPONENTE) REFERENCES COMPONENTE(ID_COMPONENTE) ON DELETE CASCADE,
FOREIGN KEY (ID_PROVEEDOR) REFERENCES PROVEEDOR(ID_PROVEEDOR) ON DELETE CASCADE
) TYPE=INNODB;
Muchas gracias de antemano y un saludo
Valora esta pregunta


0