Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL] Błąd podczas tworzenia klucza obcego Cannot add foreign key constraint 1215
Forum PHP.pl > Forum > Przedszkole
kondzik
Cześć,

Próbuje stworzyć powiązanie między następującymi tabelą: category (id_category, name_user, category_name, ...) a tabelą topics (id_topic, id_category, topic_title, name_user,...) wpisuję następujące polecenia:
alter table topics
add constraint id_category_fk foreign key (id_category) references category(id_category)


jednak kończy się to niepowodzeniem i dostaję błąd:

#1215 - Cannot add foreign key constraint


Czy ktoś wie może co mogę mieć nie tak?
Pyton_000
Sprawdź czy id_category są dokładnie takiego samego typu
kondzik
tak jeden jak i drugi to INT(10).
Pyton_000
unsigned?

Pokaż sql tworzenia obu tabel
kondzik
Tabela category

CREATE TABLE IF NOT EXISTS `category`
(
`id_category` int(10) unsigned NOT NULL,

`name_user` varchar(16) NOT NULL,

`category_name` varchar(150) NOT NULL,

`category_description` varchar(400) NOT NULL,

`id_sub` int(11) DEFAULT NULL
) ENGINE=InnoDB AUTO_INCREMENT=30 DEFAULT CHARSET=utf8;



Tabela topics

CREATE TABLE IF NOT EXISTS `topics`
(
`id_topic` int(11) NOT NULL,

`id_category` int(10) NOT NULL,

`topic_title` varchar(150) NOT NULL,

`name_user` varchar(16) NOT NULL,

`topic_last_user` varchar(16) NOT NULL,

`topic_date` datetime NOT NULL,

`topic_reply_date` datetime NOT NULL,

`topic_views` int(11) NOT NULL DEFAULT '0'
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;


Pyton_000
Tak jak napisałem, w jednej masz unsigned w drugiej nie.
kondzik
Dzięki ogromne Python_000 smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.