`
13146489
  • 浏览: 246307 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

truncate foreign key constrained table

阅读更多
执行truncate的时候出现错误

[SQL]
TRUNCATE table person;
[Err] 1701 - Cannot truncate a table referenced in a foreign key constraint (`treasurewinner`.`game_spin_log`, CONSTRAINT `game_spin_log_ibfk_1` FOREIGN KEY (`userid`) REFERENCES `treasurewinner`.`person` (`id`))

因为game_spin_log表有对person表的引用。所以失败了。

搜索答案如下:http://stackoverflow.com/questions/5452760/truncate-foreign-key-constrained-table
SET FOREIGN_KEY_CHECKS=0;
TRUNCATE table1;
TRUNCATE table2;
SET FOREIGN_KEY_CHECKS=1;
这个FOREIGN_KEY_CHECKS是每次连接设置的,断开连接后会自动恢复成默认值


do we have to set SET FOREIGN_KEY_CHECKS=1; again afterwards? – makeramen Apr 9 at 21:29
I think you have to set it to 1 again, 'cause that is the default value. – PachinSV May 4 at 16:45
2  
No, you don't. The setting is only valid during the connection. As soon as you disconnect, the next connection will have it set back to 1. – Pelle ten Cate Jun 27 at 8:07
分享到:
评论

相关推荐

    [EN]emWin534

    emWin 设计用于提供高效且独立于处理器和显示控制器的图形用户界面,用于任何使用图形显示进行 操作的应用。它与单任务和多任务环境、专用操作系统或具有任何商业RTOS 兼容,emWin 的发货 形式为C 语言源代码。...

    oracle中truncate table后的数据恢复

    NULL 博文链接:https://steve-111.iteye.com/blog/750326

    SQLite Truncate Table

    SQLite Truncate Table 在 SQLite 中,并没有 TRUNCATE TABLE 命令,但可以使用 SQLite 的 DELETE 命令从已有的表中删除全部的数据。 语法 DELETE 命令的基本语法如下: sqlite> DELETE FROM table_name; 但这种...

    MySQL用truncate命令快速清空一个数据库中的所有表

    select CONCAT('truncate TABLE ',table_schema,'.',TABLE_NAME, ';') from INFORMATION_SCHEMA.TABLES where table_schema in ('数据库1','数据库2'); 以名为dbname的数据库为例,执行select语句: mysql> ...

    Truncate Table的用法讲解

    TRUNCATE TABLE 删除表中的所有行,而不记录单个行删除操作。 语法 TRUNCATE TABLE name 参数 name 是要截断的表的名称或要删除其全部行的表的名称。 注释 TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE ...

    SQL中Truncate的用法

    本文导读:删除表中的数据的方法有delete,truncate, 其中TRUNCATE TABLE用于删除表中的所有行,而不记录单个行删除操作。TRUNCATE TABLE 与没有 WHERE 子句的 DELETE 语句类似;但是,TRUNCATE TABLE 速度更快,使用...

    PostgreSQL TRUNCATE TABLE

    PostgreSQL TRUNCATE TABLE PostgreSQL 中 TRUNCATE TABLE 用于删除表的数据,但不删除表结构。 也可以用 DROP TABLE 删除表,但是这个命令会连表的结构一起删除,如果想插入数据,需要重新建立这张表。 TRUNCATE ...

    MySQL中truncate误操作后的数据恢复案例

    实际线上的场景比较复杂,当时涉及了truncate, delete 两个操作,经确认丢数据差不多7万多行,等停下来时,差不多又有共计1万多行数据写入。 这里为了简单说明,只拿弄一个简单的业务场景举例。 测试环境: Percona-...

    Oracle给用户授权truncatetable的实现方案

    主要介绍了Oracle给用户授权truncatetable的实现方案,非常不错,具有参考借鉴价值,需要的朋友可以参考下

    Oracle_审计表_sys.aud$_授权给用户Truncate权限.docx

    Oracle_审计表_sys.aud$_授权给用户Truncate权限

    oracle truncate恢复工具

    除了Truncate需要使用到 SCAN TABLES FROM EXTENTS之外对于DROP TABLE的恢复也可以用到SCAN TABLES FROM EXTENTS , 总之当Segment Header找不到(可能存放Segment Header的数据文件丢失了)、或者已损坏(可能Segment ...

    清空ecshop体验数据的简单方法

    TRUNCATE TABLE `ecs_admin_log`; TRUNCATE TABLE `ecs_article`; TRUNCATE TABLE `ecs_brand`; TRUNCATE TABLE `ecs_comment`; TRUNCATE TABLE `ecs_category`; TRUNCATE TABLE `ecs_goods`; TRUNCATE TABLE `ecs_...

    truncate表恢复

    truncate表恢复,包含了相应的操作步骤以及脚本。遇到紧急情况,很实用哦!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    Solarwinds 数据库维护工具

    清楚数据库数据,不会影响节点的监控; TRUNCATE Table ActiveAlerts TRUNCATE Table ApplicationStatistics TRUNCATE Table CiscoBuffers_Daily TRUNCATE Table CiscoBuffers_Detail

    数据库中truncate,delete,drop语句的比较

    作为初学者,有时容易混淆truncate,delete,drop之间的根本区别,所有今日小记一下。。。

    truncate误操作恢复方法集合

    truncate误操作恢复方法集合truncate误操作恢复方法集合truncate误操作恢复方法集合

    Oracle_授权审计表Truncate权限.docx

    Oracle_授权审计表Truncate权限

    ORACLE truncate 数据恢复

    因自己前段时间因truncate一张表无法找回,且数据超过60W,平常的企业软件超过1W收费,故整理此内容,希望和我遇到同样问题的新手有帮助

Global site tag (gtag.js) - Google Analytics