【发布时间】:2012-10-06 17:28:04
【问题描述】:
给定错误:#1436 - 线程堆栈溢出:131072 字节堆栈使用了 6024 字节,需要 128000 字节。使用 'mysqld -O thread_stack=#' 指定更大的堆栈。
DROP TRIGGER IF EXISTS `After_delete_area_package`;
DELIMITER //
CREATE TRIGGER `After_delete_area_package` AFTER DELETE ON `area_package`
FOR EACH ROW BEGIN
DELETE FROM accounts_areas
WHERE (area_id = 1);
END
//
DELIMITER ;
我猜很简单。
表 accounts_areas 中唯一的 area_id 是 1
在此之前我尝试过 old.package_area_id
我没有外键限制,我的开销在设置为 28B 的 phpMyAdmin 中变为红色。
RDMS:myISAM
SQLFIDDLE:http://sqlfiddle.com/#!2/79a41
问题:为什么我的触发器不会从 account_areas where area_id = 1 中删除所有行
【问题讨论】:
-
示例数据或表模式,或者我个人觉得使用一些真实数据的 sqlfiddle 可以让 SO 用户在几秒钟内解决问题..