mysql - 删除限制 mysql 不工作

标签 mysql sql foreign-keys sql-delete referential-integrity

当他在其他表中有 child 时,我想防止从父表中删除。

我是这样做的

ALTER TABLE constant_det_tb 
ADD CONSTRAINT fk_idparent
FOREIGN KEY (idparent)
REFERENCES constant_tb(id) ON DELETE RESTRICT

当我从父 constant_tb 表中删除时,即使该表引用了另一个表并且它有记录引用它,它也会删除行。

最佳答案

确保将 InnoDB 作为所有受影响表的存储引擎。

检查这个(如果还没有的话):http://dev.mysql.com/doc/refman/5.5/en/innodb-foreign-key-constraints.html

ON DELETE RESTRICT 

引用选项是您实现此目标所需的全部内容。

关于mysql - 删除限制 mysql 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9598644/

相关文章:

php - php F3框架中使用ORM Axon的select语句

从 .NET 应用程序调用时,SQL Server 运行速度非常慢

java - 用户 'root' @'localhost' 的访问被拒绝(使用密码 : YES) IN WAMPSERVER

mysql - Phpmyadmin sql 导入错误,Joomla 2.5

MySQL - CASE vs IF 语句 vs IF 函数

sql - Oracle 查询结果与企业管理器值不匹配

mysql - 删除Cascade而不改变表结构

mysql - 恢复 InnoDB 表 : very very slow?

mysql - 优先从mysql数据库中删除重复索引

mysql - 从mysql中的上一行中减去值