Студопедия — Атрибуты. Переменные и константы в PL/SQL имеют атрибуты – свойства, которые позволяют ссылаться на тип данных и структуру объекта
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Атрибуты. Переменные и константы в PL/SQL имеют атрибуты – свойства, которые позволяют ссылаться на тип данных и структуру объекта






 

Переменные и константы в PL/SQL имеют атрибуты – свойства, которые позволяют ссылаться на тип данных и структуру объекта, не повторяя его определение. Таблицы и столбцы в базе данных имеют аналогичные атрибуты, которые можно использовать для того, чтобы облегчить сопровождение.

Атрибут %TYPE представляет тип данных переменной, константы или столбца базы данных. Это, в частности, полезно при объявлении переменной, которая ссылается на столбец базы данных. Предположим, например, что в таблице с именем books есть столбец с именем title. Чтобы объявить переменную с именем my_title, принадлежащую к тому же типу, что и столбец title, вы используете точечную нотацию и атрибут %TYPE следующим образом:

 

my_title books.title%TYPE

 

Объявление ту_title с помощью %TYPE имеет два преимущества. Первое – не нужно знать точный тип данных title. Второе – если в базе данных меняется определение title (например, увеличивается размер строки символов), то соответственно изменится и тип данных тy_title при выполнении программы.

В PL/SQL записи используются для объединения данных в группы. Запись состоит из ряда полей, в которые могут заноситься значения данных. При помощи атрибута %ROWTYPE можно получить тип записи, которая будет представлять строку таблицы. Запись может содержать целиком строку данных, выбранную из таблицы или извлеченную с помощью курсора (обсуждается позднее).

Столбцы строки и соответствующие поля записи имеют одинаковые имена и типы данных. В примере, приведенном ниже, объявляется запись с именем dept_rec. Ее поля имеют те же имена и типы данных, что и столбцы таблицы dept.

 

DECLARE

dept_rec dept%ROWTYPE;

...

 

Для доступа к полям записи можно использовать точечную нотацию, как показывает следующий пример:

 

my_deptno: = dept_rec.deptno;

 

Если объявлен курсор для выборки фамилии, оклада, даты поступления и должности служащих, то можно использовать %ROWTYPE для объявления записи, которая будет содержать ту же информацию, следующим образом:

 

DECLARE

CURSOR c1 IS SELECT ename, sal, hiredate, job FROM emp;

emp_rec c1%ROWTYPE;

 

Когда выполняется оператор FETCH cl INTO emp_rec; значение столбца ename таблицы етр присваивается полю ename записи emp_rec, значение столбца sal присваивается полю sal и т.д. Ниже показан возможный результат (табл. 3.1).

Таблица 3.1

Пример заполнения таблицы

emp_rec
emp_rec.ename Иван
emp_rec.sal 950.00
emp_rec.hiredate 03.12.2001
emp_rec.job Клерк

 

 







Дата добавления: 2014-11-10; просмотров: 515. Нарушение авторских прав; Мы поможем в написании вашей работы!



Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

ФАКТОРЫ, ВЛИЯЮЩИЕ НА ИЗНОС ДЕТАЛЕЙ, И МЕТОДЫ СНИЖЕНИИ СКОРОСТИ ИЗНАШИВАНИЯ Кроме названных причин разрушений и износов, знание которых можно использовать в системе технического обслуживания и ремонта машин для повышения их долговечности, немаловажное значение имеют знания о причинах разрушения деталей в результате старения...

Различие эмпиризма и рационализма Родоначальником эмпиризма стал английский философ Ф. Бэкон. Основной тезис эмпиризма гласит: в разуме нет ничего такого...

Индекс гингивита (PMA) (Schour, Massler, 1948) Для оценки тяжести гингивита (а в последующем и ре­гистрации динамики процесса) используют папиллярно-маргинально-альвеолярный индекс (РМА)...

Эндоскопическая диагностика язвенной болезни желудка, гастрита, опухоли Хронический гастрит - понятие клинико-анатомическое, характеризующееся определенными патоморфологическими изменениями слизистой оболочки желудка - неспецифическим воспалительным процессом...

Признаки классификации безопасности Можно выделить следующие признаки классификации безопасности. 1. По признаку масштабности принято различать следующие относительно самостоятельные геополитические уровни и виды безопасности. 1.1. Международная безопасность (глобальная и...

Прием и регистрация больных Пути госпитализации больных в стационар могут быть различны. В цен­тральное приемное отделение больные могут быть доставлены: 1) машиной скорой медицинской помощи в случае возникновения остро­го или обострения хронического заболевания...

Studopedia.info - Студопедия - 2014-2024 год . (0.008 сек.) русская версия | украинская версия