专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016      微信咨询  |  联系我们

为什么MySQL创建外键时会一直报错呢_数据库

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/3/5 14:05:21       共计:3586 浏览

为什么MySQL创建外键时会一直报错呢?

谢谢提问,问题描述不清楚,下面我就以MySQL外建的理论并加上实际操作,希望你能学习并加以运用,明白自己的错误!

1.外建的使用条件:<1>两个表必须使用InnoDB引擎<2>外建必须建立了索引,MySQL4.1.2以后的版本在建立外建时会自动创建索引<3>外建关系的两个表的列必须是数据类型相似,也就是可以相互转换类型的列,比如int和tinyint可以,但int和char则不可以。2.外建使用语法

constraint 外键名 foreign key(字段名) references 表名(字段名)

3.实际操作

<1>创建一个门表tb_dept1表,并且查询表结构

create table tb_dept1 ( id int(11) not null primary key, name varchar(22) not null, location varchar(50));

<2>定义数据表tb_emp5,让它的键deptId作为外建关联到tb_dept1的主键id

create table tb_emp5( id int(11) not null primary key,name varchar(22),deptId int(11),salary float,constraint fk_ed foreign key(deptId) references tb_dept1(id));

注:MUL不是外建的标识,而是索引的标识。普通索引:key|index

4.外建的好处

使用外键的好处是可以使得两张表存在关联,保证数据的一致性和实现一些级联的操作

【回答完毕】

关注财务总监的数据分析,学习与数据做朋友!

版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:mysql 大表查询,比传统的数据库如mysqloracle有什么区别_数据库 | ·下一条:mysql查询父节点,计算机二级有必要考吗_数据库

Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有