← К оглавлению занятия

🐛 Ошибки

📁 Блок: SQL / MySQL / Повторение ⏱️ Время изучения: ~60 мин 🎯 Сложность: Повторение

⚡ Кратко: 🐛 ошибки

Summary session 12 повторяет хранимые процедуры и параметры IN, OUT, INOUT.

Процедура создаётся через CREATE PROCEDURE, тело помещается в BEGIN ... END, вызывается через CALL.

IN подходит для входных значений, например id сотрудника.

OUT возвращает рассчитанное значение через переменную вызывающего кода.

INOUT получает начальное значение, изменяет его и возвращает обратно.

Итоговое задание — завершить задачи практикума: возраст, зарплата, увеличение зарплаты.

Топ-3 ошибки: забыть DELIMITER, не использовать SELECT ... INTO, перепутать OUT и INOUT.

Ошибки перед зачётом темы

Процедуры создаются в неправильной схеме

Перед созданием выберите нужную базу через USE database_name; или убедитесь, что активная схема правильная.

Смешаны задачи OUT и INOUT

Если процедура должна сама вернуть найденную зарплату, используйте OUT. Если надо изменить переданную зарплату, используйте INOUT.

Нет тестовых данных

Процедура может быть правильной, но возвращать пустой результат, если сотрудника с таким id нет.

Забыто повторное создание

При правке процедуры сначала выполните DROP PROCEDURE IF EXISTS name;, затем создайте её заново.