MySQL与关系完整性的一对一关系

时间:2016-09-16 07:01:52

标签: mysql foreign-key-relationship

enter image description here

我试图为上面的关系编写一个create table语句。我不确定我是否正确地代表了它,但基本上每个商店都有一个经理,每个经理都管理一个商店。我相信任何一个表中的任何一个主键都能够提供关键表的主键,我可以选择其中任何一个吗?

我还被告知,我甚至不需要为这段关系创建一个单独的表,除非它是多对多的关系?

我还想要某种约束(如果那是正确的话),如果经理被附加,如果商店不能被删除,如果经理被附加,也不能删除经理出口。

我已经写了一个创建表声明,我认为这是正确的,但我已经做了大约两个星期的事情,我真的不知道它是否会按照我想要的方式行事: / p>

CREATE TABLE Managers
(
    mgr_id int(10) NOT NULL auto_increment,
    mgr_name varchar(255),
    PRIMARY KEY (mgr_id)
);

CREATE TABLE Outlet
(
    store_id int(10) NOT NULL auto_increment,
    store_name varchar(255),
    PRIMARY KEY (store_id)
);

CREATE TABLE Store_Manager
(
    mgr_id int(10) DEFAULT '0' NOT NULL,
    store_id int(10) DEFAULT '0' NOT NULL,
    PRIMARY KEY (store_id),
    FOREIGN KEY (mgr_id) REFERENCES Managers(mgr_id)
        ON DELETE NO ACTION
);

这些语句是否会创建符合要求的表格?

由于

0 个答案:

没有答案