我想知道,是否有任何可能性來創建一個表,我有一個表接受外鍵,但可能有同一行的多個值。插入一個具有多個值的外鍵
例如:
Employee(id,name,skillid);
Skill(Skillid,skillname);
這裏員工的一個實例可能是
Employee(311,"john", (01,02));
Skill (01,Java); Skill (02,C++);
我實現了表一樣使主鍵(是,skillid)
但在我有一個表格的案例:
create table Movie (Movie_ID varchar(5),
Cast varchar(5),
foreign key(Cast) references Person(Person_ID),
primary key(movie_id, Cast));
和另一個表:
create table Awards (Award_Id varchar(5),
Person_Id varchar(5),
Movie_Id varchar(5),
Award_Name varchar(30),
Year number(4),
Organization_Id varchar(5),
primary key (Award_id,year,Organization_Id),
foreign key(Person_Id) references Person(Person_ID),
-- foreign key(Movie_ID) references Movie(Movie_ID),
foreign key(Organization_Id) references Organization(Organization_Id));
在這種情況下,我不能夠使用Movie_ID作爲一個外鍵,因爲它引用的表有兩件事情作爲其主鍵的組合。而且我不使用獎勵表中的那些屬性的第二個。
任何提示如何實現?
爲什麼'Cast'在'Movie'的主鍵中? – Neil 2012-02-14 21:23:52