0

我不确定这个问题是否已经被问过,因为我认为我的问题不是很清楚......

假设我有这张桌子:

CREATE TABLE IF NOT EXISTS EntrepriseSpecialites
(
    id_EntrepriseSpecialite INT AUTO_INCREMENT PRIMARY KEY
    ,id_Entreprise INT
    ,id_Specialite INT UNIQUE
);

目前,我的表中只能有一个具有相同值的 id_Specialite,但是有没有一种方法可以只通过 id_Entreprise 获得一个唯一的 id_Specialite。

例子 :

    id_EntrepriseSpecialite | id_Entreprise | id_Specialite
    1 | 1 | 1
    2 | 2 | 1
    3 | 2 | 4
    4 | 2 | 1 <- ops id_Entreprise 2 already have the id_Specialite 1
    5 | 3 | 1
4

1 回答 1

1

为什么不把d_Entrepriseandid_Specialite作为你的 c ompound/composite Primary Key,比如:

CREATE TABLE IF NOT EXISTS EntrepriseSpecialites
(
 id_Entreprise INT
 ,id_Specialite INT
 , PRIMARY KEY (id_Entreprise, id_Specialite)
);

请参阅SQLFiddle 演示

于 2013-11-12T00:55:38.167 回答