Điều gì đó như thế này nên làm điều đó:
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 yêu cầu các khóa ngoại phải được lập chỉ mục, do đó chỉ mục trên các cột tham chiếu
- Việc sử dụng cú pháp ràng buộc cho phép bạn đặt tên cho một ràng buộc, giúp bạn dễ dàng thay đổi và loại bỏ sau này nếu cần.
- InnoDB thực thi khóa ngoại, MyISAM thì không. (Cú pháp được phân tích cú pháp nhưng bị bỏ qua)