定义在创建表的时候
CREATE TABLE `studentgrade`(
`gradeid` INT(4) NOT NULL COMMENT '年级',
`gradename` VARCHAR(4) NOT NULL COMMENT '年级名字',
PRIMARY KEY (`gradeid`)
)ENGINE=INNODB DEFAULT CHARSET=utf8
CREATE TABLE IF NOT EXISTS `student` (
`id` INT(8) NOT NULL AUTO_INCREMENT COMMENT '学号',
`name` VARCHAR(50) DEFAULT '匿名' COMMENT '名字',
`sex` VARCHAR(2) DEFAULT '无' COMMENT '性别',
`passward` VARCHAR(20) NOT NULL DEFAULT '123456' COMMENT '密码',
`birthday` DATETIME DEFAULT NULL COMMENT '出生日期',
`address` VARCHAR(200) DEFAULT NULL COMMENT '地址',
`email` VARCHAR(50) DEFAULT NULL COMMENT '邮箱',
`gradeid` INT(4) NOT NULL COMMENT '年级',
PRIMARY KEY (`id`),
KEY `FK_gradeid`(`gradeid`),
CONSTRAINT `FK_gradeid` FOREIGN KEY (`gradeid`) REFERENCES `studentgrade`(`gradeid`)
) ENGINE=INNODB DEFAULT CHARSET=utf8
定义在表外部
ALTER TABLE`student`
ADD CONSTRAINT `FK_gradeid` FOREIGN KEY (`gradeid`) REFERENCES `grade`(gradeid)
公式
ALTER TABLE`表名`
ADD CONSTRAINT `约束名` FOREIGN KEY (`外键名`) REFERENCES `参考表`(参考字段)