CREATE TABLE table1 ( id INT NOT NULL PRIMARY KEY, name VARCHAR(50) ); CREATE TABLE table2 ( id INT NOT NULL PRIMARY KEY, table1_id INT, FOREIGN KEY (table1_id) REFERENCES table1(id) );
在上面的例子中,大家先创建了一个名为table1的表,该表有两个字段:id和name。接着大家创建了一个名为table2的表,该表也有两个字段:id和table1_id。注意到大家在table2表中使用了FOREIGN KEY关键字,将table1_id列设为了外键。
在外键约束中,REFERENCES关键字是必须的,它指向了外键所依赖的主键。在上面的例子中,大家将table2表中的table1_id列设置为了外键,并将它指向了table1表中的id列,这样就能够建立两表之间的关系。
需要注意的是,如果要为一个字段设置外键,那么它在引用表中必须是一个已存在的主键或者是UNIQUE约束。否则,mysql将无法为该字段创建外键约束。