Algo assim deve fazer isso:
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;
- O MySQL requer que as chaves estrangeiras sejam indexadas, daí o índice nas colunas de referência
- O uso da sintaxe de restrição permite nomear uma restrição, facilitando a alteração e eliminação posteriormente, se necessário.
- O InnoDB impõe chaves estrangeiras, o MyISAM não. (A sintaxe é analisada, mas ignorada)