数据库------》mysql数据基本操作---》创建外键关联关系和删除外键关联关系

1.为什么需要外键

答:外键可以保证数据参照的完整性


CREATE TABLE empl(

    id INT(11) PRIMARY KEY,
    NAME VARCHAR(25),
    deptid INT(11), 
    CONSTRAINT fk_emp_dept1 FOREIGN KEY(deptid) REFERENCES dept(id)
)
CREATE TABLE dept(
    id INT PRIMARY KEY,
    dep_name VARCHAR(23)

)


两张表,被写上constraint(约束)的意思,就是一张从表。没错,外键关联当中存在主表和从表关系,被人约束的是从表(你看还是得当家做主吧),没有约束是主表

所以上述中dept是主表,另外从键会保护主键,就是说当你删除主键,从键将不会同意,所以要先干掉从键再去干掉主键,或者解除外键约束,empl是从表 从表中要准备一个外键用来关联,在empl中就是deptid啦,而你是否在想fk_emp_dept1到底是什么鬼了?这个就是一个外键约束的名字,你在正儿八经的表中是看不到的,你得打开表的外键关联才可看到他的风采。


看效果图:

从表效果图 deptid是外键

数据库------》mysql数据基本操作---》创建外键关联关系和删除外键关联关系_第1张图片


fk_emp_dept1是外键约束名

数据库------》mysql数据基本操作---》创建外键关联关系和删除外键关联关系_第2张图片


2.删除外键关联关系(解除外键约束)

ALTER TABLE empl DROP FOREIGN KEY fk_emp_dept1;




你可能感兴趣的:(数据库)