MySQL外键的创建

来源:互联网 发布:软件apphangb1未响应 编辑:程序博客网 时间:2024/06/05 10:02

mysql的外键创建方式有两种,一种是在创建子表的同时创建外键,另一种时在创建完子表后,修改子表添加外键。

#创建外键方式一:创建子表的同时创建外键
#年级表(id\年级名称)

CREATE TABLE IF NOT EXISTS grade(gradeid INT(10) PRIMARY KEY AUTO_INCREMENT,gradename VARCHAR(50) NOT NULL);

#学生信息表(学号、姓名、性别、年级、手机号、地址、出生日期、邮箱、身份证号)
CREATE TABLE student(studentno INT(4) PRIMARY KEY,studentname VARCHAR(20) NOT NULL DEFAULT '匿名',sex TINYINT(1) DEFAULT 1,gradeid INT(10),phone VARCHAR(50) NOT NULL,address VARCHAR(255),borndate DATETIME,email VARCHAR(50),identityCard VARCHAR(18) NOT NULL,CONSTRAINT FK_gradeid FOREIGN KEY(gradeid) REFERENCES grade(gradeid));


#创建外键方式二:创建子表完毕后,修改子表添加外键
CREATE TABLE student(studentno INT(4) PRIMARY KEY,studentname VARCHAR(20) NOT NULL DEFAULT '匿名',sex TINYINT(1) DEFAULT 1,gradeid INT(10),phone VARCHAR(50) NOT NULL,address VARCHAR(255),borndate DATETIME,email VARCHAR(50),identityCard VARCHAR(18) NOT NULL);
#修改子表添加外键
ALTER TABLE studentADD CONSTRAINT FK_gradeid FOREIGN KEY(gradeid) REFERENCES grade(gradeid);


#删除外键

ALTER TABLE student DROP FOREIGN KEY FK_gradeid;ALTER TABLE student DROP INDEX FK_gradeid;

注意:删除具有主外键关系的表时,要先删子表,后删主表

0 0
原创粉丝点击