Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie erstelle ich einen Fremdschlüssel, der auch ein Primärschlüssel in MySQL ist?

FOREIGN KEY (sale_id) REFERENCES Sale(sale_id) hinzufügen zu jeder fremden Tabelle:

CREATE TABLE Sale(
    sale_id CHAR(40),
    PRIMARY KEY(sale_id),
    discount DOUBLE,
    type VARCHAR(255),
    price DOUBLE
) ENGINE=INNODB;

CREATE TABLE Normal_Sale(
    sale_id CHAR(40),
    PRIMARY KEY(sale_id),
    FOREIGN KEY (sale_id) REFERENCES Sale(sale_id)
) ENGINE=INNODB;

CREATE TABLE Special_Sale(
    sale_id CHAR(40),
    PRIMARY KEY(sale_id),
    FOREIGN KEY (sale_id) REFERENCES Sale(sale_id)
) ENGINE=INNODB;

Stellen Sie einfach sicher, dass Ihre Datenbank InnoDB ist die ausländische Referenzen unterstützt.