MYSQL外键

例:student表设置外键,该外键值引用class表内的id
student表的字段名有 (id,name,age,classID)        class表的字段名有(id,score)
其中student表内id是主键                                     class表内id也是主键,并设置了自增长
那么classID需要设置外键,其外键为class表内的id主键。 注意必须被引用的值为主键才能设置为外键,否则报错。还有设置外键的类型和类型值必须与其一致(student中的classID类型必须与class中的id类型和类型值一致),否则也会报错。

设置外键一般有两个常用方式-----创建表时同时设置/创建后追加
创建表时设置↓
use human;  //使用human数据库
create table student(
            id int(4) primary key auto_increment,  //设置主键和
            `name` varchar(10),      //特殊类型名需要用数字1隔壁的那个波浪符号包裹
            age int(3),
            classID int(4),                                                                                                                 ↓需要引入哪个表内的字段名
            constraint
自定义的外键名称(一般推荐格式为FK_外键名称 ) foreign key( classID) references class(id) 
             ↑红色为格式必须写                                                                                   ↑括号内为当前表内需要设置外键的字段名
);
create table `class`(
        id int primary key auto_increment,  // 被引用的外键值必须是主键
        score int(3)
);
创建表后追加↓
alter table 表名 add constraint 自定义的外键名称 foreign key(需要引用外键的字段名) references 被引用的表名(表内的值);

删除外键



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值