Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
0 / 0 / 0
Регистрация: 08.02.2016
Сообщений: 98
1
MySQL

Ошибка переполнения стека при удалении записей из таблицы

27.10.2016, 11:26. Показов 1692. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Ситуёвина такая: есть таблица. На таблицу подвешены несколько триггеров, удаляющих записи из зависимых таблиц. При попытке удалить записи из главной таблицы получаю такое сообщение об ошибке:

Thread stack overrun: 8828 bytes used of a 131072 byte stack, and 128000 bytes needed. Use 'mysqld --thread_stack=#' to specify a bigger stack.

В чём может быть дело? Операция-то тривиальная. Нет?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.10.2016, 11:26
Ответы с готовыми решениями:

ошибка при удалении записей из бд
при удалении данных выскакивает ошибка: Удаление или изменение записи невозможно. В таблице...

Что я мог сделать неправильно при удалении всех записей из таблицы?
пишу код procedure TForm3.Button2Click(Sender: TObject); begin query1.sql.Clear; ...

Ошибка при удалении повторяющихся записей
Добрый день! есть табличка Id_zavtag zav_number tag 1 ...

Ошибка при удалении записей в таблице
Доброго времени суток, возникла проблема при удалении записей в таблице, при удалении возникает...

6
Эксперт PHP
5753 / 4133 / 1507
Регистрация: 06.01.2011
Сообщений: 11,276
27.10.2016, 12:53 2
Цитата Сообщение от maxapet Посмотреть сообщение
На таблицу подвешены несколько триггеров, удаляющих записи из зависимых таблиц.
А чем foreign key не угодили?

Проверьте значение настройки "thread_stack" в файле my.cnf или my.ini
1
0 / 0 / 0
Регистрация: 08.02.2016
Сообщений: 98
27.10.2016, 15:40  [ТС] 3
А чем foreign key не угодили?
Я только начинаю работать с MySQL- а что, Foreign Key обеспечивает удаление записей из зависимых таблиц?

"Проверьте значение настройки "thread_stack" в файле my.cnf или my.ini" - это понятно из описания ошибки, но неужели DELETE такая ресурсоёмкая операция? Обычно, переполнение стека происходит при бесконечной рекурсии, насколько я с этим сталкивался. Тут ведь ничего такого быть не должно.
0
41 / 41 / 16
Регистрация: 04.10.2016
Сообщений: 154
27.10.2016, 15:41 4
Возможно кол-во записей большое и не хватает выделенной памяти для совершения операции, а вообще такая штука делается как говорил Para_bellum через foreign key

onDelete и onUpdate = CASCADE
2
Эксперт PHP
5753 / 4133 / 1507
Регистрация: 06.01.2011
Сообщений: 11,276
27.10.2016, 15:47 5
Лучший ответ Сообщение было отмечено maxapet как решение

Решение

Цитата Сообщение от maxapet Посмотреть сообщение
Foreign Key обеспечивает удаление записей из зависимых таблиц?
Да, если указать ON DELETE CASCADE. Например, в таблице "posts" есть поле "user_id", которое относится к полю "id" из таблицы "users". И вот если удалить из таблицы "users" запись с id = 1, то из таблицы "posts" удалятся все записи, у которых в поле "user_id" содержится единица.

Не знаю, как там у Вас всё организовано. Возможно, что есть какое-то зацикливание, если настройка "thread_stack" содержит вменяемое значение.
1
0 / 0 / 0
Регистрация: 08.02.2016
Сообщений: 98
27.10.2016, 16:46  [ТС] 6
Не знаю, как там у Вас всё организовано. Возможно, что есть какое-то зацикливание, если настройка "thread_stack" содержит вменяемое значение.
Нет ничего сложного: главная таблица, и две зависимых, без каких-либо дополнительных связей.
Спасибо, сейчас попробую.
0
0 / 0 / 0
Регистрация: 08.02.2016
Сообщений: 98
29.10.2016, 18:42  [ТС] 7
Сделал через PRIMARY KEY, и всё заработало, спасибо.
0
29.10.2016, 18:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.10.2016, 18:42
Помогаю со студенческими работами здесь

Ошибка переполнения стека
При запуске программы на исполнение выдает ошибку: "202. Ошибка переполнения стека". Что это такое...

Ошибка переполнения стека
При компиляции всё нормально но при запуске ошибка uses crt; type mas1=array of integer; ...

Ошибка переполнения стека
Уважаемые форумчане! Такая проблема. Необходимо поработать в PascalABC.NET с двумя достаточно...

Ошибка переполнения стека.
Имеем программу uses CRT; const n = 50; type tzapis = record FIO :string; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru