精华内容
下载资源
问答
  • oracle删除表外键

    2020-03-10 19:04:30
    不能通过直接去掉外键会报约束性报错 要用sql分两步执行: 1.数据库里先查出来你要删的约束。 2.在删除指定约束就行。执行俩条sql 1.-- select * from user_constraints where table_name='TBL_ARTICLE'; 2.-- ALTER...

    不能通过直接去掉外键会报约束性报错 要用sql分两步执行:

    1.数据库里先查出来你要删的约束。
    2.在删除指定约束就行。执行俩条sql

    1.-- select * from user_constraints where table_name='TBL_ARTICLE';
    2.-- ALTER TABLE TBL_ARTICLE DROP CONSTRAINT SYS_C0011152
    
    展开全文
  • 下面小编就为大家带来一篇MySQL删除表的时候忽略外键约束的简单实现。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • 在MySQL中删除一张或一条数据的时候,出现 [Err] 1451 -Cannot deleteorupdatea parent row: aforeignkeyconstraintfails (...) 这是因为MySQL中设置了foreign key关联,造成无法更新或删除数据。可以通过设置...
  • MySQL删除具有外键关联的

    千次阅读 2019-03-11 20:25:01
    MySQL删除表的时候忽略外键约束  删除表不是特别常用,特别是对于存在外键关联的删除更得小心。但是在开发过程中,发现Schema设计的有问题而且要删除现有的数据库中所有的来重新创建也是常有的事情;另外在...

    MySQL删除表的时候忽略外键约束
      删除表不是特别常用,特别是对于存在外键关联的表,删除更得小心。但是在开发过程中,发现Schema设计的有问题而且要删除现有的数据库中所有的表来重新创建也是常有的事情;另外在测试的时候,也有需要重新创建数据库的所有表。当然很多自动化工具也可以做这样的事情。

    删除表的时候有时会遇到这样的错误消息:
    ERROR 1217 (23000): Cannot delete or update a parent row: a foreign key constraint fails
      这是因为你尝试删除的表中的字段被用作了其他表的外键,因此在删除这个表(父表)之前必须先删除具有外键的表(子表)。也就是说,删除表的过程需要和创建表的过程一致。

    但是这往往不可接受,一方面如果表太多了,手动排序有点不可接受;另一方面,现在还没有自动的工具对进行排序(其实也不是不能实现)。因此,mysql中提供了一个变量FOREIGN_KEY_CHECKS来设置是否在必要的时候检查外键约束。一般比较推荐这样做:

    首先,自动生成所有的DROP语句,将其中的MyDatabaseName替换成你的数据库名称:

    SELECT concat('DROP TABLE IF EXISTS ', table_name, ';')
    FROM information_schema.tables
    WHERE table_schema = 'MyDatabaseName';
    

    然后,在生成的代码前后添加下面设置FOREIGN_KEY_CHECKS变量的语句:

    SET FOREIGN_KEY_CHECKS = 0;
    

    – DROP语句之后

    SET FOREIGN_KEY_CHECKS = 1;
    

    不过,要是忘记了最后一句也没太大关系,这个变量是基于Session的,也就是说,当你关闭了客户端,重新建立连接的时候,这个变量会恢复默认值。如果需要在全局范围内不检查外键约束(这种情况会比较少吧),可以这样做:

    SET GLOBAL FOREIGN_KEY_CHECKS = 0;
    或者
    set @@global.FOREIGN_KEY_CHECKS = 0;
    
    展开全文
  • 如何删除表外键约束?

    千次阅读 2020-08-02 14:43:16
    删除表外键约束 我们曾在第一章中讲过外键的作用,以及如何创建一个外键。建立了外键我们就建立起了两张的关联关系,那如果我想删除呢?为了确保数据库的正确性,我们必须先解除两个之间的关联关系,...

    时间煮雨
    @R星校长

    删除表的外键约束

    我们曾在第一章中讲过外键的作用,以及如何创建一个表的外键。建立了外键我们就建立起了两张表的关联关系,那如果我想删除主表呢?为了确保数据库的正确性,我们必须先解除两个表之间的关联关系,那就是删除外键约束啦!让我们先来看看删除外键约束的语法规则。

    语法规则为: ALTER TABLE 表名 DROP FOREIGN KEY 外键约束名; 。
    举个例子: 我们先建立了一个主表 country,表结构如下图所示:

    1
    然后建立一个有外键约束的子表Mall_products2,让它的键country_id作为外键关联到country的主键idSQL语句如下:

    CREATE TABLE Mall_products2
    (
    id INT(11) PRIMARY KEY,
    country_name VARCHAR(20) NOT NULL,
    country_id INT(11) NOT NULL,
    CONSTRAINT prod_country FOREIGN KEY(country_id) REFERENCES country(id)
    )
    

    上述语句成功执行后,在表Mall_products2上添加了名称为prod_country的外键约束,外键名称为prod_country,依赖于表country的主键id,从下图中可以看到,已经成功添加了表的外键:
    2
    Mall_products2表结构如下图所示:
    3
    下面开始删除外键约束,语句如下:
    ALTER TABLE Mall_products2 DROP FOREIGN KEY prod_country;

    使用SHOW CREATE TABLE查看表 Mall_products2 的结构,结果如下:
    4
    我们可以看到,FOREIGN KEY不见了,外键约束删除成功!

    接下来你们可以自行体验一下了!   在这里插入图片描述

    展开全文
  • Mysql数据库如何删除某一个数据库的所有外键并不删除相应的索引,一个sql脚本解决,无需知道外键的名称。
  • 删除表外键约束

    2020-01-10 16:25:51
    alter table 表名 drop foreign key 外键别名

    alter table 表名 drop foreign key 外键别名

    展开全文
  • 删除表不是特别常用,特别是对于存在外键关联的删除更得小心。但是在开发过程中,发现Schema设计的有问题而且要删除现有的数据库中所有的来重新创建也是常有的事情;另外在测试的时候,也有需要重新创建数据库...
  • postgresql 删除外键

    千次阅读 2020-05-13 11:15:47
    postgresql外键命令: ALTER TABLE table_name DROPCONSTRAINT foreing_key; 注意有时候table_name 和 foreing_key 需要加双引号; 添加外键命令: ALTER TABLE table_name1 ADD CONSTRAINT foreing_key_...
  • 数据库的外键虽然能保证数据数据一致性和完整性,但是也一定程度地影响了数据更新的性能。在开发中,我们使用PowerDesigner建立物理数据模型时,为了结构的清晰,增加可读性,...删除所有外键 查询schema中所有外
  • ,外键表ID=b.fkeyid ,外键表名称=object_name(b.fkeyid) ,外键名称= c.name ,外键列ID=b.fkey ,外键列名=(SELECT name FROM syscolumns WHERE colid=b.fkey AND id=b.fkeyid) ,级联更新=ObjectPro...
  • 最近接手一小活,需求要将一张中的数据进行全部更新,因主外键关联,无法删除中数据,即删除外键的数据时,oracle会提示:ORA-02292:integrity constraint(xx) violated - child record found,这种...
  • 由于外键约束导致数据库无法删除的时候可用采取以下方法删除表和约束 外键导致无法删除
  • 数据库的外键虽然能保证数据数据一致性和完整性,但是也一定程度地影响了数据更新的性能。在开发中,我们使用PowerDesigner建立物理...再把结果中的删除语句拿出来执行,删除数据库中所有外键约束 SELECT CONCAT('ALTER
  • 首先在删除含有外键表之前,外键约束状态是1,可以通过以下语句进行查询得到 方法1:在mysql的session域下 mysql> select @@foreign_key_checks; +----------------------+ | @@foreign_key_checks | +-...
  • Mysql 删除外键约束

    2018-03-26 19:42:17
    引言:MySQL 直接删除带有外键约束的时,常常会报下面的错误:或者是:Cannot truncate a table referenced in a foreign key constraint !解决方法:SET FOREIGN_KEY_CHECKS = 0; TRUNCATE table $table_name; ...
  • MySQL 删除外键操作

    万次阅读 2018-10-09 15:49:09
    1.显现要删除外键。 show create table 表名; 2.看到约束; 3.删除即可。 alter table 表名 drop foreign key 约束名;  补充: 增加主键:alter table your_table_name add primary key (your_primary_...
  • 删除表外键

    2014-05-20 16:13:06
    ALTER TABLE 表名 DROP foreign key 外键
  • 删除外键的主

    2020-01-10 16:32:04
    1先删除外键删除 2删除外键关联
  • 数据库设计 E-R模型 E-R模型的基本元素是:实体、联系和属性 ...被指向的实体,称之为主实体(主),也叫父实体(父) 负责指向的实体,称之为从实体(从),也叫子实体(子) 对关系字段进
  • sqlserver删除一张的所有外键约束

    千次阅读 2018-04-27 15:25:37
    sqlserver删除一张的所有外键约束解决方法:复制以下代码,修改表名,并执行即可代码地址:http://www.yayihouse.com/yayishuwu/chapter/1201
  • SQL中怎么创建外键删除外键

    千次阅读 2020-03-29 23:05:26
    删除外键约束(1)获取外键约束名称5. 小结 1.什么是外键约束 外键约束:对外键字段的值进行更新和插入时会和引用中字段的数据进行验证,数据如果不合法则更新和插入会失败,保证数据的有效性 2.对于已经存在的...
  • 用于查询某个数据库下所有外键约束情况,以便统一分析外键约束是否合理;主要查询出外键的,是否级联删除,级联更新,强制外键约束,强制复制约束始终状态。如想使用别的状态,请自行添加。下载的童鞋别下载错了...
  • 删除表外键及索引

    2016-11-11 17:42:24
    #删除表外键 ALTER TABLE student DROP FOREIGN KEY FK_gradeId; #删除外键索引 ALTER TABLE student DROP INDEX FK_gradeId;
  • 记录一下碰到的问题。由于我是使用PowerDesigner来建mysql物理...它不让我删除,说存在外键约束,删除会破坏他们的结构。 外键约束:让数据库自己通过外键来保证数据的完整性和一致性,让他们的关联性更强。 虽然它是有
  • ##########mysql查询某个库所有外键生成删除外键sql SELECT CONCAT('ALTER TABLE ',TABLE_SCHEMA,'.',TABLE_NAME,' DROP FOREIGN KEY ',CONSTRAINT_NAME,' ;') FROM information_schema.TABLE_CONSTRAINTS ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 143,212
精华内容 57,284
关键字:

删除表的外键