首页 文章

如何强制截断MySQL中数据库中的所有表(都是innodb)?

提问于
浏览
14

当我尝试截断innodb表时,我想我得到了外键约束错误 . 使用MyISAM时,我没有遇到任何问题 .

是否有一种简单的方法可以强制截断所有表格?或者我应该创建一个脚本来删除数据库,创建一个新的,然后从头创建表?

2 回答

  • 54

    关于FK约束,您可以使用下一个语句禁用它们 -

    SET FOREIGN_KEY_CHECKS = 0;
    ...DML statements
    SET FOREIGN_KEY_CHECKS = 1; -- enable checking
    
  • 8

    如果您在操作过程中遇到外键问题,您可以:

    ALTER TABLE tablename DISABLE KEYS
    

    然后开展业务,然后重新启用密钥:

    ALTER TABLE tablename ENABLE KEYS
    

    此技术用于MySQL转储 .

相关问题