zoukankan      html  css  js  c++  java
  • mysql删除带外键约束的表的方法

    1、

    https://www.cnblogs.com/jiazhutao/p/12575821.html

    在MySQL中删除一张表或一条数据的时候,出现
    [Err] 1451 -Cannot deleteorupdatea parent row:
    aforeignkeyconstraintfails (...)

    这是因为MySQL中设置了foreign key关联,造成无法更新或删除数据。可以通过设置FOREIGN_KEY_CHECKS变量来避免这种情况。

    禁用外键约束,我们可以使用:

    SET FOREIGN_KEY_CHECKS=0;

    然后再删除数据

    启动外键约束,我们可以使用:
    SET FOREIGN_KEY_CHECKS=1;

    查看当前FOREIGN_KEY_CHECKS的值,可用如下命令:
    SELECT @@FOREIGN_KEY_CHECKS;

    2、

    https://www.cnblogs.com/tjudzj/p/10003908.html

    mysql清空表可以用delete和truncate两个命令来完成:

         1. delete

             ① 语法:delete from table_name;

             ② 示例:DELETE FROM `order`;

         2. truncate

             ① 语法:truncate table table_name;

             ② 示例:TRUNCATE TABLE `order`;

        3. 区别

            ① 使用delete清空表中的记录,内容的ID仍然从删除点的ID继续建立,而不是从1开始。而truncate相当于保留了表的结构而重新建立了一张同样的新表。delete的效果有点像将mysql表中所有记录一条一条删除到删完。

            ② 效率上truncate比delete快。但truncate删除后不记录mysql日志,不可以恢复数据。

  • 相关阅读:
    Longest Palindromic Substring
    PayPal MLSE job description
    Continuous Median
    Remove Duplicates From Linked List
    Valid IP Address
    Longest substring without duplication
    Largest range
    Subarray sort
    Multi String Search
    Suffix Trie Construction
  • 原文地址:https://www.cnblogs.com/yaok430/p/14754421.html
Copyright © 2011-2022 走看看