mysql的外键

回顾数据库的主键

主键一般与auto_increment一起使用:

mysql> alter table t1 add id int primary key auto_increment first;

外键:foreign key
插入记录时,字段值在另一个表字段值范围内选择
使用规则:表储存引擎必须是innodb,字段类型要一直要一致,被参照字段必须要是索引类型的一种(parimary key)
外键的标志是mul,限制字段赋值
创建外键的命令:
create table 表名(
字段名,foreign key(字段名) references 表名(字段名) //指定外键
on update cascade //同步更新
on delete cascade //同步删除
)engine=innodb; //指定储存引擎

mysql> create table t1 yg(yg_id int primary key auto_increment,yg_name char(10))enegine=innodb;
mysql> insert into t1.yg(yg_name) values("tom"),("haha"),("bob");
mysql> create table gz(gz_id int,gz float(7,2),foreign key(gz_id) references yg(yg_id) on update cascade on delete cascade)engine=innodb;
mysql> show create table gz\G;
mysql> insert into gz values(1,12000),(2,13000),(3,14000);
_____________________________________________________________________
ps:delete 是删除表记录,drop删除的是表结构
_____________________________________________________________________
删除外键

mysql> show create talbe gz\G;
alter table gz drop foreign key gz_ibfk_1;


©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容