Я задаюсь вопросом, почему я не могу быть в состоянии добавить эти иностранные keys.This моя схеманесколько внешних ключей не может быть добавлен
CREATE TABLE members(
member_id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
num_1 int,
num_2 int,
password VARCHAR(50) NOT NULL,
PRIMARY KEY (member_id)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE contacts(
contact_id INT NOT NULL AUTO_INCREMENT,
s1 int,
phone_number VARCHAR(10) NOT NULL,
s2 int,
s3 int,
PRIMARY KEY (contact_id),
FOREIGN KEY (s1) REFERENCES members(num_1) ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY (s2) REFERENCES members(num_2) ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY (s3) REFERENCES members(member_id) ON DELETE CASCADE ON UPDATE CASCADE
)ENGINE=InnoDB DEFAULT CHARSET=utf8
Я получаю эту ошибку на тузд терминале ERROR 1215 (HY000): Cannot add foreign key constraint
Есть ли проблема с моей схемой ?.
у вас может не быть указателя на 'num_1' и' num_2'. что может быть причиной –
Обычно внешнему ключу нужен первичный ключ в справочной таблице –
@JanneMatikainen Я думаю, что уникальный ключ – chetan