Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...
Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...
Топ:
Особенности труда и отдыха в условиях низких температур: К работам при низких температурах на открытом воздухе и в не отапливаемых помещениях допускаются лица не моложе 18 лет, прошедшие...
Проблема типологии научных революций: Глобальные научные революции и типы научной рациональности...
История развития методов оптимизации: теорема Куна-Таккера, метод Лагранжа, роль выпуклости в оптимизации...
Интересное:
Принципы управления денежными потоками: одним из методов контроля за состоянием денежной наличности является...
Подходы к решению темы фильма: Существует три основных типа исторического фильма, имеющих между собой много общего...
Влияние предпринимательской среды на эффективное функционирование предприятия: Предпринимательская среда – это совокупность внешних и внутренних факторов, оказывающих влияние на функционирование фирмы...
Дисциплины:
2022-12-20 | 22 |
5.00
из
|
Заказать работу |
|
|
Блок в PL/SQL.
Именованый и неименованый (анонимный – при отсутствии заголовка) блок.
Раздел выполнения может наряду с программным кодом содержать произвольное число других (вложенных) блоков PL/SQL.
Пример блока PL/SQL (анонимного) в SQL*Plus:
SET SERVEROUTPUT ON
DECLARE
var VARCHAR2(20);
var1 var%TYPE;
BEGIN
/*
комментарий
*/ -- строчный комментарий
NULL; -- пустой оператор, ничего не делать
var1:= 'Hello world'; -- оператор присвоенния
DBMS_OUTPUT.PUT_LINE (var1); -- обращение к процедуре
BEGIN -- вложеный блок – тоже оператор
DBMS_OUTPUT.PUT_LINE ('Hello once more');
END; -- конец вложеного блока
END;
/
Основные типы и структуры данных
Набор типов переменных в PL/SQL отличен от набора типов в Oracle SQL. Начиная с версии 9 это чистое расширение, так как с этой версии СУБД PL/SQL автоматически поддерживает все типы Oracle SQL за счет использования общего одного модуля обработки SQL-запросов (до этого PL/SQL использовал собственную SQL-машину).
Все переменные в PL/SQL можно отнести к одному из следующих видов:
Вид данных | Описание |
Скалярный | Переменные, представляющие собой ровно одно значение (числовое, дату и т.д.) |
Составной | Переменные, представляющие именованную группу значений (запись, массив) |
Ссылка | Ссылка на объект или курсор |
LOB | Указание на массив большого размера |
Скалярные переменные
Числовые типы
Делятся на типы с десятичным хранением (NUMBER) и с двоичным (целые числа типов BINARY_INTEGER и PLS_INTEGER).
Подтипы типа NUMBER:
Тип PL/ SQL | Совместимость | Соответствующий тип в Oracle |
DEC(точность, масштаб) | ANSI | NUMBER(точность, масштаб) |
DECIMAL(точность, масштаб) | IBM | NUMBER(точность, масштаб) |
DOUBLE PRECISION | ANSI | NUMBER |
FLOAT(двоичная точность) | ANSI, IBM | NUMBER |
INT | ANSI | NUMBER(38) |
INTEGER | ANSI, IBM | NUMBER(38) |
NUMERIC(точность, масштаб) | ANSI | NUMBER(точность, масштаб) |
REAL | ANSI | NUMBER |
SMALLINT | ANSI, IBM | NUMBER(38) |
|
Подтипы BINARY_INTEGER: NATURAL, NATURALN (вариант с NOT NULL), POSITIVE, POSITIVEN (вариант с NOT NULL), SIGNTYPE (-1, 0, 1).
Тип PLS_INTEGER по внешнему проявлению не отличается от BINARY_INTEGER, но имеет формат хранения компьютера, а не собственный двоичный формат фирмы Oracle, что делает его более производительным при больших вычислениях. Однако с версии 10 внутренний формат BINARY_INTEGER приведен к формату PLS_INTEGER и разницы между этими типами нет совсем.
Строковые типы
Тип | Описание |
CHAR | Строки фиксированной длины до 32767 байт (то есть больше, чем предел в 2000 байт в Oracle 7 и 4000 байт в Oracle 8 для хранимых в БД строк) |
VARCHAR2 | Строки переменной длины до 32767 байт (то есть больше, чем предел в 2000 байт в Oracle 7 и 4000 байт в Oracle 8 для хранимых в БД строк) |
NCHAR NVARCHAR2 | NLS-символьные типы. Позволяют обрабатывать символьные данные в мультибайтовой кодировке Unicode. |
LONG | Строки переменной длины до 32767 байт. Тип сохранен для обратной совместимости; в частности встречается в некоторых справочных таблицах |
RAW | Байтовая строка переменной длины до 32767 байт (в версии 7 было 2000 байт). Не перекодируется при передаче по Oracle Net |
LONG RAW | Байтовая строка переменной длины до 32767 байт. Тип сохранен для обратной совместимости версий Oracle |
ROWID | Двоичный массив фиксированной длины для хранения физического адреса данных Oracle в шестнадцатеричном формате BBBBBBBB.RRRR.FFFF (Oracle 7) и в формате OOOOOOFFFBBBBBBRRR (Oracle 8) |
UROWID (Oracle 8.1) | «Универсальный» формат для ROWID: шестнадцатеричная строка переменной длины (до 4000 байт) с логическим значением ROWID. Используется для хранения адресов строк в индексно организованных (index organized) таблицах или в таблицах DB2 (черех шлюз) |
Моменты времени и интервалы
То же, что в Oracle SQL плюс несколько специальных подтипов.
Следующие подтипы в PL/SQL используются для передачи параметров с максимально возможной точностью («без ограничения точности»):
|
Подтип... | ... соответствует типу |
TIMESTAMP_UNCONSTRAINED | TIMESTAMP (9) |
TIMESTAMP_TZ_UNCONSTRAINED | TIMESTAMP (9) WITH TIME ZONE |
YMINTERVAL_UNCONSTRAINED | INTERVAL YEAR (9) TO MONTH |
DSINTERVAL_UNCONSTRAINED | INTERVAL DAY (9) TO SECOND (9) |
TIME_UNCONSTRAINED | TIME (9)(*) |
TIME_TZ_UNCONSTRAINED | TIME (9) WITH TIME ZONE(*) |
(*) Как самостоятельный тип в Oracle не реализован, фактически недореализован, но подтип возможен для описания переменных и параметров в PL/SQL.
Булевы переменные
Фактически – трехзначные переменные с допустимыми значениями TRUE, FALSE и NULL. Правила сравнения и операции – те же, что в Oracle SQL.
LOB-типы
В отличие от скалярных типов, LOB-типы позволяют хранить не сами данные, а «локаторы» (указатели) на данные, размещенные вне, либо внутри БД.
Тип | Описание |
BFILE | Указатель на файл с данными в операционной системе. Средствами Oracle данные можно только читать. |
BLOB | Указатель на большой неструктурированный массив в БД |
CLOB | Указатель на большой символьный массив в БД |
NCLOB | Указатель на большой NLS-символьный массив в БД |
|
|
Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...
Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!