![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Форумчанин
Регистрация: 17.01.2010
Сообщений: 277
|
![]()
Всем привет. Вопрос большей частью по MySQL. Есть таблица (`header`) с древовидной структурой (`id`,`id_header`,`name`). Написал триггер, который при удалении должен удалять дочерние элементы:
Код:
Код:
|
![]() |
![]() |
![]() |
#2 |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
![]()
переводчика наймите
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 17.01.2010
Сообщений: 277
|
![]()
Да я понял что нужно какой то параметр увеличить для стэка. А вот где и как я не знаю(
|
![]() |
![]() |
![]() |
#4 |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
![]()
неправильно поняли, вам надо понять почему у вас "Thread stack overrun"
|
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 17.01.2010
Сообщений: 277
|
![]()
А какие могут быть причины? Я подумал что какой то параметр настроен неверно.
|
![]() |
![]() |
![]() |
#6 |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
![]()
такое часто может быть если есть рекурсия и она достаточно глубокая, ну или если она бесконечная то однозначно произойдет
у вас как я вижу тоже рекурсия, вот она достигает предела стэка, вам надо увеличить этот параметр (thread_stack вроде), тут вы правы, это я не туда смотрел ![]() |
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 17.01.2010
Сообщений: 277
|
![]()
Очень странно, рекурсия была всего на один уровень вложенности.. Ну да ладно, изменил я все таки этот параметр. Теперь ошибка такая:
Код:
|
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 08.07.2010
Сообщений: 679
|
![]()
MySQL не поддерживает рекурсивные триггеры (может кто и поправит .. может есть параметр в новых версиях ... ). В MSSQL насколько я знаю, такой параметр есть.
В вашей ситуации сделайте поле id_header в качестве внешнего ключа на `id` и пропишите ему ON DELETE CASCADE А вообще в таких ситуациях пишите хранимые процедуры |
![]() |
![]() |
![]() |
#9 | |
Форумчанин
Регистрация: 17.01.2010
Сообщений: 277
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#10 |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
![]()
Так а чем каскад не угодил?
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
триггеры | brans | SQL, базы данных | 1 | 14.12.2011 10:18 |
Триггеры | JoyStick 0_o | Помощь студентам | 4 | 01.06.2011 12:13 |
Триггеры | JoyStick 0_o | SQL, базы данных | 0 | 01.06.2011 10:24 |
Триггеры | МартинИ | SQL, базы данных | 4 | 23.12.2010 20:12 |
генератор поля, не работают триггеры delphi | Domanoff | БД в Delphi | 4 | 07.04.2010 21:40 |