给定错误:#1436 - 线程堆栈溢出:使用6024字节的131072字节堆栈,需要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 我没有外键限制,我的开销在设置为28B的phpMyAdmin中变为红色。
RDMS:myISAM
SQLFIDDLE:http://sqlfiddle.com/#!2/79a41
问题:为什么我的触发器不会删除accounts_areas中area_id = 1
的所有行答案 0 :(得分:0)
你可能错过END
吗?
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;
修改1
由于您正在恢复thread_stack
错误,解决方案将是增加堆栈大小。