Algo como esto debería hacerlo:
CREATE TABLE MyReferencingTable AS (
[COLUMN DEFINITIONS]
refcol1 INT NOT NULL,
rofcol2 INT NOT NULL,
CONSTRAINT fk_mrt_ot FOREIGN KEY (refcol1, refcol2)
REFERENCES OtherTable(col1, col2)
) ENGINE=InnoDB;
- MySQL requiere que se indexen claves foráneas, de ahí el índice en las columnas de referencia
- El uso de la sintaxis de restricción le permite nombrar una restricción, lo que facilita su modificación y eliminación en un momento posterior si es necesario.
- InnoDB impone claves foráneas, MyISAM no. (La sintaxis se analiza pero se ignora)