ORACLE中的复合外键

时间:2016-01-07 02:41:06

标签: sql oracle foreign-keys

我试图将数据库模式转换为ORACLE SQL中的数据库

Books (BookID,PubID,Title,Author,Price,Availability)

Publisher (PubID,Name,Address,BookID)

Member (MemberID,Name,Address,MemberType,MemberDate,ExpiryDate)

Barrowings (MemberID,BookID,IssuedDate,ReturnDate,DueDate)

我做了前3个表。但我有第4个表(借款)的问题 (MemberID,BookID,IssueDate)我想将前2列(MemberID,BookID)作为复合外键(应该引用2个不同的表)

MemberID在Member表中引用MemberID colimn BookID引用Books表中的BookID表。 IssiedDate列是该表的主键 如何在ORACLE SQL中创建复合外键

2 个答案:

答案 0 :(得分:1)

您不能使用2个父表创建一个外键。

在这种情况下,您需要创建2个外键约束,一个到BOOKS,另一个到MEMBER。

答案 1 :(得分:0)

创建借盘( MemberID varchar2(20)约束fk_memid引用成员(MemberID), BookID varchar2(20)约束fk_bookid参考书籍(BookID))

为此,首先您必须在专利表列上提供主键或唯一。即书籍中的BookID列和成员中的memberid列。