📖 Теория
⚡ Кратко: 📖 теория
Практикум закрепляет параметры хранимых процедур на трёх задачах: возраст, зарплата и увеличение зарплаты.
В первой задаче достаточно IN: id сотрудника входит в процедуру, а результат показывается обычным SELECT.
Во второй задаче нужен OUT: зарплата возвращается через переменную вызывающего кода.
В третьей задаче нужен INOUT: текущая зарплата входит в процедуру, увеличивается на 10% и возвращается наружу.
Перед проверкой важно создать или выбрать таблицу employees с колонками id, age, salary.
Топ-3 ошибки: пропустить CALL, написать только имя процедуры, забыть SELECT @salary после вызова.
Логика практикума
Источник содержит три задания. Они подобраны так, чтобы по одному разу использовать каждый тип параметра: IN, OUT и INOUT.
| Задача | Тип параметра | Почему |
|---|---|---|
| Возраст сотрудника по id | IN | id только помогает найти строку. |
| Зарплата по id | IN + OUT | id входит, зарплата возвращается через переменную. |
| Увеличение зарплаты | INOUT | исходное значение меняется и возвращается. |
Базовая таблица
DROP TABLE IF EXISTS employees;
CREATE TABLE employees (
id INT PRIMARY KEY,
name VARCHAR(100),
age INT,
salary INT
);
INSERT INTO employees (id, name, age, salary) VALUES
(1, 'Anna', 28, 50000),
(2, 'Ben', 34, 62000),
(3, 'Cara', 41, 71000);
Если вы работаете в учебной базе, проверьте фактические имена колонок через DESCRIBE employees;.