Последние несколько недель я медленно изучаю SQL. Я изучил всю реляционную алгебру и основы работы реляционных баз данных. Сейчас я пытаюсь понять, как это реализовано.
Камень преткновения, с которым я столкнулся в этом, - это внешние ключи в MySQL. Я не могу найти ничего другого, кроме того, что они существуют в схеме хранения InnoDB , которую имеет MySQL.
Что представляет собой простой пример внешних ключей, реализованных в MySQL?
Вот часть схемы, которую я написал, которая, кажется, не работает, если вы скорее укажете на мой недостаток, чем покажете мне рабочий пример.
CREATE TABLE `posts` (
`pID` bigint(20) NOT NULL auto_increment,
`content` text NOT NULL,
`time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`uID` bigint(20) NOT NULL,
`wikiptr` bigint(20) default NULL,
`cID` bigint(20) NOT NULL,
PRIMARY KEY (`pID`),
Foreign Key(`cID`) references categories,
Foreign Key(`uID`) references users
) ENGINE=InnoDB;