Студопедия Главная Случайная страница Обратная связь

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

Атрибуты. Переменные и константы в 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; просмотров: 550. Нарушение авторских прав; Мы поможем в написании вашей работы!




Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...


ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...


Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...


Логические цифровые микросхемы Более сложные элементы цифровой схемотехники (триггеры, мультиплексоры, декодеры и т.д.) не имеют...

Тема: Изучение приспособленности организмов к среде обитания Цель:выяснить механизм образования приспособлений к среде обитания и их относительный характер, сделать вывод о том, что приспособленность – результат действия естественного отбора...

Тема: Изучение фенотипов местных сортов растений Цель: расширить знания о задачах современной селекции. Оборудование:пакетики семян различных сортов томатов...

Тема: Составление цепи питания Цель: расширить знания о биотических факторах среды. Оборудование:гербарные растения...

Кишечный шов (Ламбера, Альберта, Шмидена, Матешука) Кишечный шов– это способ соединения кишечной стенки. В основе кишечного шва лежит принцип футлярного строения кишечной стенки...

Принципы резекции желудка по типу Бильрот 1, Бильрот 2; операция Гофмейстера-Финстерера. Гастрэктомия Резекция желудка – удаление части желудка: а) дистальная – удаляют 2/3 желудка б) проксимальная – удаляют 95% желудка. Показания...

Ваготомия. Дренирующие операции Ваготомия – денервация зон желудка, секретирующих соляную кислоту, путем пересечения блуждающих нервов или их ветвей...

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