phpmyadmin多对多关系复合键

时间:2014-05-23 13:25:14

标签: mysql phpmyadmin

我正在尝试在phpmyadmin中的两个表之间创建联结表。这是我第一次使用phpmyadmin并且有点挣扎。

我的会话表有一个复合键,由该表中的4列组成。联结表具有外键(及其索引)。我想知道是否可以将复合主键作为联结表中的外键。

如果我将会话表更改为主键中只有一列,则联结表接受,但这不是我需要的。我担心phpmyadmin不接受复合主键作为多对多联结表中的外键。请参阅下面的图片。

http://i.stack.imgur.com/lpA42.png

2 个答案:

答案 0 :(得分:0)

不幸的是,在这个问题上花了很长时间后,事实证明当你使用phpmyadmin时,你不能从一个引用另一个表中的复合键的表中获得一个复合键。

答案 1 :(得分:0)

希望这会对你有所帮助:


create table t1
(
    nom varchar(32), 
    nom_2 varchar(32),
    nom_3 varchar(32),

    CONSTRAINT pk_attr PRIMARY KEY (nom, nom_table, nom_owner),
);

create table t2
(
    nom_t1 varchar(32),
    nom_2 varchar(32),
    nom_3 varchar(32),


    CONSTRAINT fk_t1 FOREIGN KEY (nom_t1, nom_2, nom_3) REFERENCES t1(nom, nom_2, nom_3)
);