ここ数週間、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;