0 0

MySql中如何删除外键?10

我在lesson表中没注意,一下设置了2个外键,导致出现了严重的问题,此表因为有外键导致不能删除,但是此表的添加了外键的列导致我查表出现错误的信息:
1.lesson表:

            <!--StartFragment -->

 

我现在想删除sid这个列的外键:

            <!--StartFragment -->

别的同学的机子都可以删除,但是我的机子就不行,我们的MySql是一个版本的,不知道是什么原因?谁帮我解答下?????


问题补充:<div class="quote_title">hanyuanbo 写道</div><div class="quote_div">你的同学可以删除,而且版本也一样,可能是你们表的结构不同。你可以先将那个包含外键的那个表备份下,删除掉那个表格,这样就可以删除外键了。之后再把备份恢复下就好了。<img src="/images/smiles/icon_smile.gif"/> </div> <br /><div class="quote_title">hanyuanbo 写道</div><div class="quote_div">你的同学可以删除,而且版本也一样,可能是你们表的结构不同。你可以先将那个包含外键的那个表备份下,删除掉那个表格,这样就可以删除外键了。之后再把备份恢复下就好了。<img src="/images/smiles/icon_smile.gif"/> </div> <br />就是因为有外键,所以导致列和表都删除不了,除非把整个Database都删除,那样的话我做的整个database都没了,只要找到能删除外键的,就可以把这个列删除,也就照样可以把这个表删除!!!!郁闷啊就是不能删除哪个外键!!

问题补充:<div class="quote_title">hanyuanbo 写道</div><div class="quote_div">在删除那个把该外键作为主键的表之前,你先把包含外键的那个表中的外键全部删掉,置为null,或者直接将那列删掉,这样就没有地方引用这些外键,你就可以将那个表删除掉了。希望可以帮忙。记得以前做过类似的东西,删除将外键作为主键的表之前,必须将引用到这个键的内容置空,即没有引用该键,这样便可以删除了。</div> <br />alter table lesson drop index key; <br />&nbsp; 可是这个语句删除不了外键啊,我也知道只要把外键删掉就可以删除表了,关键是我不知道怎么删外键了!!!!
2010年8月31日 10:24

2个答案 按时间排序 按投票排序

0 0

在删除那个把该外键作为主键的表之前,你先把包含外键的那个表中的外键全部删掉,置为null,或者直接将那列删掉,这样就没有地方引用这些外键,你就可以将那个表删除掉了。希望可以帮忙。记得以前做过类似的东西,删除将外键作为主键的表之前,必须将引用到这个键的内容置空,即没有引用该键,这样便可以删除了。

2010年8月31日 11:43
0 0

你的同学可以删除,而且版本也一样,可能是你们表的结构不同。你可以先将那个包含外键的那个表备份下,删除掉那个表格,这样就可以删除外键了。之后再把备份恢复下就好了。

2010年8月31日 10:38

相关推荐

    MySQL中利用外键实现级联删除、更新

    "MySQL 中利用外键实现级联删除、更新" 在 MySQL 中,外键是指在一个表中的一列或多列,引用另一个表中的主键或唯一索引。外键可以强制实施数据的一致性和完整性,使得数据更加可靠。外键在 MySQL 中的实现主要是...

    Mysql增加外键的方法

    在MySQL数据库中,可以通过特定的语法结构来增加外键,即便在建表时未设置外键也能在之后进行添加。本文详细介绍了在MySQL中增加外键的方法,并提供了使用PHPMyAdmin管理工具和SQL语句来实现外键添加的操作步骤和...

    mysql处理添加外键时提示error 150 问题的解决方法

    MySQL 中添加外键时,可能会遇到 Error 150 的问题,这个问题是 MySQL 本身的 bug,已经被报告到 MySQL 开发者列表中很多年了。然而,导致这个错误的原因却并不是操作系统的文件权限错误或其他原因,而是 MySQL 一直...

    mysql 删除外键.png

    "mysql 删除外键.png" 这个文件很可能是关于如何在MySQL中删除外键的一个教程或示例的截图。通常,删除外键涉及以下步骤: 1. **了解外键约束**:首先,你需要知道哪个表的哪一列是外键。这可以通过查询`...

    如何在MySQL数据库中定义外键

    - **SET NULL**:将参照表中的外键字段设置为 NULL,如果主表中的对应字段被删除或更新。 综上所述,通过以上步骤,我们不仅可以在 MySQL 数据库中成功定义外键,还可以根据业务需求选择合适的级联操作来进一步增强...

    掌握数据完整性:深入理解MySQL中的外键

    ### 数据完整性与MySQL中的外键 #### MySQL简介 MySQL是一个非常流行的关系型数据库管理系统(RDBMS)。它基于SQL(结构化查询语言)来进行数据管理,并且是LAMP(Linux, Apache, MySQL, PHP/Python/Perl)技术栈...

    mysql外键的添加与删除参考.pdf

    MySQL 外键的添加与删除参考 MySQL 外键是关系数据库管理系统中的一种约束机制,它能够确保数据的一致性和完整性。外键是指在一个表中字段的值必须存在于另一个表中的字段值中。MySQL 中的外键只能在 InnoDB 存储...

    为什么在创建php网站时在mysql数据库表中使用外键?

    在构建PHP网站时,使用MySQL数据库中的外键是一个至关重要的设计决策,这涉及到数据库的完整性和数据一致性。外键是数据库关系模型中的一个重要概念,它允许我们建立表之间的关联,确保数据的一致性和依赖性。以下是...

    mysql数据库设置外键应该注意的几点

    在MySQL数据库中,外键是实现表间关系的重要机制,它确保了数据的一致性和完整性。设置外键时,有几点需要注意,以确保数据库设计的规范性和高效性。以下是对这些关键点的详细阐述: 1. **外键约束定义**: 外键是...

    mySql主外键关联例子

    知识点很简单,但是语句总忘,在这里写一个小例子,有助于大家记忆。mySql主外键关联例子

    外键.sql ~MySQL创建外键的操作

    MySQL 外键

    mysql的外键

    在MySQL数据库系统中,外键(Foreign Key)是一种重要的关系型数据库约束,它用于建立和维护两个表之间的关联。外键允许我们在一个表(被引用表)中引用另一个表(引用表)的主键,从而确保数据的一致性和完整性。在...

    MySQL命令行&MySql外键设置详解 .txt

    MySQL命令行&MySql外键设置详解 .txt

    详解MySQL中的外键约束问题

    MySQL中的外键约束是数据库设计中用于维护数据完整性和参照完整性的关键机制,特别是在关系数据库中。外键约束确保了在一个表中的数据(子表)与另一个表(父表)中的数据之间的关联性。在MySQL中,外键约束主要用于...

    MySQL外键的定义、作用、添加和删除

    MySQL 外键的定义、作用、添加和删除 外键是指引用另外一个表中的一列或多列数据,被引用的列应该具有主键约束或者唯一性约束。外键用来建立和加强两个表数据之间的连接。例如,在学生档案和成绩单两张表中,如果...

    MySQL删除表的时候忽略外键约束的简单实现

    在MySQL数据库管理中,删除表是一项需要谨慎操作的任务,尤其是当表之间存在外键约束时。外键约束是关系数据库中确保数据完整性和一致性的重要机制,它不允许在父表(引用其他表的字段的表)中删除那些已被子表引用...

    数据库新手入门之MySQL中如何定义外键

    数据库新手入门之MySQL中如何定义外键 本文介绍了在MySQL数据库中定义数据表、设置索引、定义外键、级联等操作。下面将详细说明标题和描述中所说的知识点。 首先,文章中提到了创建数据表的过程,例如创建parts表...

    mysql外键设置

    其中 `child` 表中的 `parent_id` 字段作为外键,参照 `parent` 表中的 `id` 字段,并且当删除 `parent` 表中的记录时,同时级联删除 `child` 表中的相关记录。 创建表的 SQL 语句如下: ```sql CREATE TABLE ...

    Mysql表创建外键报错解决方案

    数据库表A: CREATE TABLE task_desc_tab ( id INT(11) PRIMARY KEY NOT NULL COMMENT '自增主键' AUTO_INCREMENT, &lt;strong&gt;taskname&lt;/strong&gt; VARCHAR(200) NOT NULL COMMENT '任务名字', sqlname VARCHAR(20) ...

Global site tag (gtag.js) - Google Analytics