mysql数据库怎么删除一个表的外键
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql数据库怎么删除一个表的外键相关的知识,希望对你有一定的参考价值。
mysql数据库的一个表中有个外键我想把这个外键删掉总是报错
怎么删除一个表的外键?
ERROR 1025 (HY000): Error on rename of '.\hy_oa\oa_travel' to '.\hy_oa\#sql2-644
-1' (errno: 152)
mysql删除外键语法:
alter table ss_accesscode drop foreign key 外键约束名称;外键定义:
如果公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个关系的外键。由此可见,外键表示了两个关系之间的相关联系。以另一个关系的外键作主关键字的表被称为主表,具有此外键的表被称为主表的从表。外键又称作外关键字。
作用:
保持数据一致性,完整性,主要目的是控制存储在外键表中的数据。 使两张表形成关联,外键只能引用外表中的列的值或使用空值。
参考技术A ALTER TABLE tablename DROP FOREIGN KEY keyname不能删除可能是该外键在别的表中被引用本回答被提问者采纳
如何在sqlyog设置表的外键
如题,如何在sqlyog设置表的外键?
1、首先双击SQLyogEnt的快捷方式以打开软件;
2、进入到软件首页,首先创建一个新的数据库,命令为newMysql;
3、创建两个表,命令为class、student;
class表结构为id、class_code、class_name;
student表结构为id、class_code、student_code、student_name;
4、创建成功后,在newMysql数据库列表中就存在了两个表;
5、然后我们来创建外键;通过sql创建:alter table class add foreign key class_foreignKey(id) references student(id);
6、然后也可以对外键进行删除处理;通过sql删除:ALTER TABLE class DROP FOREIGN KEY class_foreignKey;
参考技术A要求:建立了两个表一个attence(记作A表),一个leave(记作L表)。
A表中有用户的用户名,密码,id(自增作为主键)。
L表中是一个请假的表,L表中需要标识哪一个用户请的假。
这里需要设置外键:
步骤:
1、
在此右键L表
2、寻找并点击“关联/外键”或者摁“F10”。
弹出此对话框。
3、新建
4、a.在主键表下拉菜单中找到A表
b.在Source Column中找到userid
c.在Target Column 中找到id
d.点击创建
就完成了外键的设置。
我用的是SQLyog 9.33,学习yii是用到的两个库。这个生成在框架设计器里操作。首先将需要处理的表添add tables,在table里选择Relationships/foreign Keys(带有钥匙的标志),下面操作就水到渠成了
参考技术C 三种方法:1.直接写sql语句.
2.用SQLyog 选择外键表 ,点击右键 选择关联/外键,然后再选择主表,外键.
3.在表 vet_specialties 上点击右键 ,然后找到Relationships/ForeignKeys中,然后选择相应的列。
或者直接写命令:
ALTER TABLE vet_specialties ADD FOREIGN KEY FK_SPECIALTY_ID(specialty_id) REFERENCES specialties (id)
ALTER TABLE vet_specialties ADD FOREIGN KEY FK_VET_ID(vet_id) REFERENCES vets (id)
以上是关于mysql数据库怎么删除一个表的外键的主要内容,如果未能解决你的问题,请参考以下文章