最近几周我一直在慢慢学习 SQL。我已经学习了所有的关系代数和关系数据库如何工作的基础知识。我现在要做的是了解它是如何实现的。
我遇到的一个绊脚石是 MySQL 中的外键。除了它们存在于 MySQL 的InnoDB存储模式中之外,我似乎找不到太多关于它们的信息。
什么是在 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;