首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在MySQL中创建同时也是主键的外键?

如何在MySQL中创建同时也是主键的外键?
EN

Stack Overflow用户
提问于 2011-04-07 09:50:37
回答 1查看 50.8K关注 0票数 29

这应该是一个相当简单的问题,但我找不到一个简单的答案。如何在MySQL中创建同时也是主键的外键?这是我目前的尝试:

代码语言:javascript
复制
CREATE TABLE Sale(
    sale_id CHAR(40),
    PRIMARY KEY(sale_id),
    discount DOUBLE,
    type VARCHAR(255),
    price DOUBLE,
    );

CREATE TABLE Normal_Sale(
    sale_id CHAR(40),
    PRIMARY KEY(sale_id);
);

CREATE TABLE Special_Sale(
    sale_id CHAR(40),
    PRIMARY KEY(sale_id);
);

这里我漏掉了什么?

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-04-07 10:02:52

FOREIGN KEY (sale_id) REFERENCES Sale(sale_id)添加到每个外部表:

代码语言:javascript
复制
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;

只需确保您的数据库是支持外部引用的InnoDB

票数 56
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5575051

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档