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

🐛 Ошибки

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

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

Практикум закрепляет параметры хранимых процедур на трёх задачах: возраст, зарплата и увеличение зарплаты.

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

Во второй задаче нужен OUT: зарплата возвращается через переменную вызывающего кода.

В третьей задаче нужен INOUT: текущая зарплата входит в процедуру, увеличивается на 10% и возвращается наружу.

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

Топ-3 ошибки: пропустить CALL, написать только имя процедуры, забыть SELECT @salary после вызова.

Ошибки практикума

Нет CALL

Симптом: строка get_employee_salary(1, @salary); не выполняется как SQL-команда.

Исправление: используйте CALL get_employee_salary(1, @salary);.

Нет вывода переменной

Симптом: процедура выполнилась, но результат не виден.

Исправление: после вызова добавьте SELECT @salary;.

Колонка называется иначе

Симптом: ошибка Unknown column 'salary'.

Исправление: проверьте структуру через DESCRIBE employees; и используйте правильное имя.

Процедура уже существует

Симптом: ошибка при повторном создании.

Исправление: выполните DROP PROCEDURE IF EXISTS procedure_name; перед повторной попыткой.