SQL - 引用表中没有与外键中的引用列列表匹配的主键或候选键

时间:2017-12-05 20:38:21

标签: sql-server

对SQL

不太熟悉

看到我的错误: enter image description here

我有以下表格:

CREATE TABLE AUTHORS (
  AuthorID INT NOT NULL,
  AuthorFirstName VARCHAR(45) NULL,
  AuthorLastName VARCHAR(45) NULL,
  AuthorCountry VARCHAR(45) NULL,
  PUBLISHERS_PublisherID INT NOT NULL,
  PRIMARY KEY (AuthorID, PUBLISHERS_PublisherID),
  INDEX fk_AUTHORS_PUBLISHERS1_idx (PUBLISHERS_PublisherID ASC),
  CONSTRAINT fk_AUTHORS_PUBLISHERS1
  FOREIGN KEY (PUBLISHERS_PublisherID)
  REFERENCES dbo.PUBLISHERS (PublisherID))

该表没有错误,但下表是REFERENCES AUTHORS (AuthorID)

处发生错误的位置
CREATE TABLE BOOKS (
ISBN INT NOT NULL,
  SeriesName VARCHAR(45) NULL,
  Title VARCHAR(45) NULL,
  AuthorID INT NULL,
  PublicationDate DATE NULL,
  Publisher VARCHAR(45) NULL,
  AUTHORS_AuthorID INT NOT NULL,
  Series_SeriesName VARCHAR(45) NOT NULL,
  Series_AuthorID INT NOT NULL,
  PRIMARY KEY (ISBN, AUTHORS_AuthorID, Series_SeriesName, Series_AuthorID),
  CONSTRAINT fk_BOOKS_AUTHORS1
    FOREIGN KEY (AUTHORS_AuthorID)
    REFERENCES AUTHORS (AuthorID)
  CONSTRAINT fk_BOOKS_Series1
    FOREIGN KEY (Series_SeriesName , Series_AuthorID)
    REFERENCES SERIES (SeriesName , AuthorID))

我确定我需要修理或添加一些东西,但我不确定是什么,谢谢。

参见我的ERD图

ERD

0 个答案:

没有答案