首页 > 解决方案 > 向现有表添加外键约束

问题描述

我正在尝试将外键约束添加到两个现有表。我已经在 Stack Overflow 上浏览了 MySQL 文档和有关此问题的其他一些帖子,但是出现了错误代码 1215。

有人可以帮我确定我的问题/错误。

这是我现有的两个表:

- -图书

CREATE TABLE Books(

ISBN VARCHAR (13) NOT NULL,

title VARCHAR(60) NOT NULL,

pubDate DATE NOT NULL,

PubID INT NOT NULL,

cost DECIMAL (5,2) NOT NULL,

retail DECIMAL (5,2) NOT NULL,

discount DECIMAL (5,2) NOT NULL,

category ENUM('Fitness', 'Children', 'Computer', 'Cooking', 'Business', 'Literature') NOT NULL,

PRIMARY KEY(ISBN)

---出版商

CREATE TABLE Publishers(

pubID INT NOT NULL,

name VARCHAR(60) NOT NULL,

contact VARCHAR(20),

phone VARCHAR(20)

);

这是我的变更声明

ALTER TABLE Books

ADD CONSTRAINT FK_pubID

FOREIGN KEY (pubID) REFERENCES Publishers(pubID);

我知道 PubID 在 Books 表中有一个大写 P,在 Publishers 表中有一个较低的 pubID,但我仍然不确定。

标签: mysqlsql-serverforeign-keys

解决方案


推荐阅读