Oracle Developer👨🏻‍💻
3.22K subscribers
611 photos
68 videos
2 files
489 links
🔝 канал о разработке в СУБД Oracle:
SQL, PL/SQL, оптимизация, архитектура и многое другое...

Backend-pro.ru - обучение по различным программам, связанных с backend-разработкой для ФЛ и ЮЛ.

Отец-основатель: @denis_dbd Кивилёв Денис
Download Telegram
Объявление с привязкой - объявление типа данных с привязкой к какому-то объекту. Например, к строке таблицы/курсора (%rowtype) или типу колонки/переменной (%type).

Особенности:
- Привязка происходит на стадии компиляции.
- Не приводит к увеличению времени выполнения.
- При изменении привязываемого элемента - код станет INVALID. Нужно выполнить повторную компиляцию.
- Ограничения/default-значения столбцов не транслируются в переменную.

Плюсы использования:
1. Синхронизация со структурами в БД - изменилась таблица или тип колонки, изменения сразу же применятся по всему - коду.
2. Нормализация локальных переменных - источник типа из одного места. Момент спорный, в некоторых ситуациях подойдет.

Рекомендация: использовать объявление с привязкой везде, где это возможно.

Пример:
-- Тип строки таблицы
v_department_row      dep%rowtype;

-- Параметры функции привязаны к таблицей
function get_dep_name_by_id (p_id dep.id%type) return dep.name%type is...

#теория #type #rowtype
👍21👎1