С.Урман ORACLE8. ЯЗЫК ПРОГРАММИРОВАНИЯ PL/SQL

advertisement
С.Урман
ORACLE8. ЯЗЫК ПРОГРАММИРОВАНИЯ PL/SQL
Содержание
1 Введение в PL/SQL
Почему PL/SQL?
Модель клиент/ сервер
Стандарты
Средства PL/SQL
Блочная структура
Обработка ошибок
Переменные и типы
Циклические конструкции
Курсоры
Соглашения, принятые в этой книге
PL/SQL и версии Oracle
Документация Oracle
Содержимое компакт-диска
Местонахождение примеров
Примеры таблиц
student_sequence
students
major_stats
rooms
classes
registered_students
RS_audit
log_table
temp_table
debug_table
Итоги
2 Основы PL/SQL
Блок PL/SQL
Структура блока
Лексические единицы
Идентификаторы
Зарезервированные слова
Идентификаторы в кавычках
Ограничители
Литералы
Символьные литералы
Числовые литералы
Логические литералы
Комментарии
Однострочные комментарии
1
2
3
4
4
4
4
5
6
7
7
7
9
9
9
9
10
10
11
11
12
13
15
15
15
15
16
17
18
20
22
22
23
23
24
25
25
25
26
26
26
Многострочные комментарии
Объявление переменных
Синтаксис объявления
Инициализация переменных
Типы PL/SQL
Скалярные типы
Семейство числовых типов
Семейство символьных типов
Семейство типов без обработки
Семейство типов даты
Семейство типов ROWID
Семейство логических типов
Семейство типов Trusted
Составные типы
Ссылочные типы
Типы LOB
Использование %TYPE
Подтипы, определяемые пользователями
Преобразование типов данных
Явное преобразование типов данных
Неявное преобразование типов данных
Области действия и области видимости переменных
Выражения и операции
Присваивание
Выражения
Символьные выражения
Логические выражения
Управляющие структуры PL/SQL
IF-THEN-ELSE
NULL-условия
Циклы
Простые циклы
Циклы WHILE
Числовые циклы FOR
Операторы GOTO и метки
Ограничения при использовании GOTO
Помеченные циклы
Рекомендации по использованию GOTO
NULL как оператор
Прагмы
Стиль программирования на PL/SQL
Комментарии
Имена переменных
Выделение заглавными буквами
27
27
27
28
29
29
29
31
32
33
33
33
33
33
34
34
34
35
35
36
36
37
38
38
39
39
40
41
41
43
44
44
45
46
47
48
49
49
49
50
50
51
51
51
Структурирование текста
Общий стиль
Итоги
3 Записи и таблицы
Записи PL/SQL
Присваивание записей
Использование %ROWTYPE
Таблицы
Таблицы и массивы
Атрибуты таблиц
COUNT
DELETE
EXISTS
FIRST и LAST
NEXT и PRIOR
Рекомендации по использованию таблиц PL/SQL
Итоги
4 SQL в PL/SQL
SQL-операторы
Использование SQL в PL/SQL
DML в PL/SQL
SELECT
INSERT
UPDATE
DELETE
Условие WHERE
Имена переменных
Сравнение символов
Ссылки на таблицы
Связи баз данных
Синонимы
Псевдостолбцы
CURRVAL и NEXTVAL
LEVEL
ROWID
ROWNUM
GRANT, REVOKE и привилегии
Объектные и системные привилегии
GRANT и REVOKE
GRANT
REVOKE
Роли
Управление транзакциями
COMMIT и ROLLBACK
52
52
52
53
54
55
56
56
57
59
59
59
60
61
61
62
62
63
64
64
65
66
68
69
70
70
71
71
73
73
74
74
74
75
75
75
76
76
77
77
77
77
78
79
Точки сохранения
Транзакции и блоки
Итоги
5 Встроенные SQL-функции
Введение
Символьные функции, возвращающие символьные значения
CHR
CONCAT
INITCAP
LOWER
LPAD
LTRIM
NLS INITCAP
NLS LOWER
NLS UPPER
REPLACE
RPAD
RTRIM
SOUNDEX
SUBSTR
SUBSTRB
TRANSLATE
UPPER
Символьные функции, возвращающие числовые значения
ASCII
INSTR
INSTRB
LENGTH
LENGTHB
NLSSORT
Числовые функции
ABS
ACOS
ASIN
ATAN
ATAN2
CEIL
COS
COSH
EXP
FLOOR
LN
LOG
MOD
80
80
81
83
84
84
84
85
85
85
86
86
87
87
88
88
89
89
90
90
91
91
92
92
92
93
93
94
94
94
95
95
95
95
96
96
96
97
97
97
98
98
98
98
POWER
ROUND
SIGN
SIN
SINH
SQRT
TAN
TANH
TRUNC
Временные функции
ADD_MONTHS
I.AST_DAY
MONTHS BETWEEN
NEW_TIME
NEXT_DAY
ROUND
SYSDATE
TRUNC
Арифметические операции с датами
Функции преобразования
CHARTOROWID
CONVERT
HEXTORAW
RAWTOHEX
ROWIDTOCHAR
TO_CHAR (даты)
ТО_CHAR (метки)
ТО_CHAR (числа)
ТО_DATE
ТО_LABEL
ТО_MULTI BYTE
ТО_NUMBER
TO_SINGLE_BYTE
Групповые функции
AVG
COUNT
GLB
LUB
МАХ
MIN
STDDEV
SUM
VARIANCE
Другие функции
99
99
99
100
100
100
101
101
101
101
102
102
102
103
103
104
104
105
105
106
106
106
107
107
юа
108
ПО
110
112
112
112
112
113
113
113
114
114
114
115
115
115
116
116
116
BFILENAME
DECODE
DUMP
EMPTY_GLOB/EMPTY_BLOB
GREATEST
GREATEST_LB
LEAST
LEAST_UB
NVL
UID
USER
USERENV
VSIZE
PL/SQL в работе: печать чисел прописью
Итоги
6 Курсоры
Определение курсора
Обработка явных курсоров
Объявление курсора
Открытие курсора
Считывание строк из курсора
Закрытие курсора
Курсорные атрибуты
Параметризованные курсоры
Обработка неявных курсоров
Циклы выборки
Простые циклы
Циклы WHILE
Курсорные циклы FOR
NO DATA FOUND и %NOTFOUND
Курсоры SELECT FOR UPDATE
FOR UPDATE
WHERE CURRENT OF
Размещение оператора COMMIT при считывании строк
Курсорные переменные
Объявление курсорной переменной
Ограниченные и неограниченные курсорные переменные
Выделение памяти курсорным переменным
Использование EXEC SQL ALLOCATE
Автоматическое выделение памяти
Открытие курсорной переменной для запроса
Закрытие курсорных переменных
Пример курсорной переменной 1
Пример курсорной переменной 2
116
117
117
119
119
119
119
120
120
120
121
121
122
122
130
131
132
132
133
133
134
135
135
138
138
140
140
142
143
144
144
144
145
146
147
147
148
149
149
149
149
150
150
152
Ограничения на использование курсорных переменных
Итоги
7 Подпрограммы: процедуры и функции
Создание процедур и функций
Создание процедуры
Параметры и их виды
Тело процедуры
Ограничения на формальные параметры
Позиционное и именное представления
Значения параметров по умолчанию
Создание функций
Описание функций
Оператор RETURN
Свойства функций
Исключительные ситуации, устанавливаемые в подпрограммах
Удаление процедур и функций
Размещение подпрограмм
Хранимые подпрограммы и словарь данных
Локальные подпрограммы
Предварительное объявление
Хранимые и локальные подпрограммы
Зависимости в подпрограммах
Определение зависимостей
Модель временных меток
Модель подписей
Привилегии и хранимые подпрограммы
Привилегия EXECUTE
Хранимые подпрограммы и роли
Итоги
8 Модули
Модули
Описание модуля
Тело модуля
Модули и области действия
Переопределение модульных подпрограмм
Инициализация модуля
Модули и зависимости
Использование хранимых функций в SQL-операторах
Уровни строгости
Прагма RESTRICT_REFERENCES
Параметры по умолчанию
PL/SQL в работе: экспортер схем PL/SQL
Итоги
9 Триггеры
153
154
155
156
157
157
159
160
161
163
164
166
166
167
167
168
169
169
170
172
173
173
175
175
176
177
177
177
180
181
182
182
183
185
185
187
189
191
191
193
195
195
204
205
Создание триггеров
Элементы триггера
Имена триггеров
Типы триггеров
Триггеры INSTEAD OF
Ограничения, налагаемые на триггеры
Триггеры и словарь данных
Представления словаря данных
Удаление и запрещение триггеров
P-код триггера
Порядок активизации триггера
Использование :old и :new в строковых триггерах
Условие WHEN
Использование триггерных предикатов INSERTING, UPDATING и
DELETING
Изменяющиеся таблицы
Пример изменяющейся таблицы
Как избежать ошибок, связанных с изменяющимися таблицами
PL/SQL в работе: реализация каскадного обновления данных
Состав утилиты
uc.sql
demobld.sql
unindex.sql
generate.sql
Функционирование утилиты
Итоги
10 Обработка ошибок
Понятие исключительной ситуации
Объявление исключительных ситуаций
Исключительные ситуации, определяемые пользователями
Стандартные исключительные ситуации
Установление исключительных ситуаций
Обработка исключительных ситуаций
Обработчик OTHERS
Прагма EXCEPTION_INIT
Использование функции RAISE_APPLICATION_ERROR
Передача исключительных ситуаций
Исключительные ситуации, устанавливаемые в выполняемом
разделе
Пример 1
Пример 2
Пример 3
Исключительные ситуации, устанавливаемые в разделе объявлений
Пример 4
206
207
207
208
208
209
209
209
210
210
210
212
214
214
216
217
218
220
221
222
222
223
224
224
228
229
230
231
231
232
234
234
236
239
240
242
242
243
244
244
245
245
Пример 5
Исключительные ситуации, устанавливаемые в разделе
исключительных ситуаций
Пример 6
Пример 7
Пример 8
Рекомендации по использованию исключительных ситуаций
Область действия исключительной ситуации
Недопущение необрабатываемых исключительных ситуаций
Обнаружение ошибок
PL/SQL в работе:универсальный обработчик ошибок
Итоги
11 Объекты
Вступление
Основы объектно-ориентированного программирования
Абстракция
Объекты и экземпляры объектов
Объектно-реляционные базы данных
Объектные типы
Создание объектных типов
Объявление и инициализация объектов
Инициализация объектов
NULL-объекты и NULL-атрибуты
Предварительное объявление типов
Методы
Вызов метода
Ключевое слово SELF
Использование атрибута %TYPE с объектами
Исключительные ситуации и атрибуты объектных типов
Изменение и удаление типов
ALTER TYPE ... COMPILE
ALTER TYPE ... REPLACE AS OBLECT
DROP TYPE
Зависимости объектов
Объекты в базе данных
Размещение объектов
Устойчивые и неустойчивые объекты
Идентификаторы объектов и ссылки на объекты
Объекты в операторах DML
INSERT
UPDATE
DELETE
Объекты-столбцы в операторах SELECT
Объекты-строки в операторах SELECT
245
245
245
246
247
248
248
249
249
250
258
259
260
260
261
261
261
262
262
264
264
264
265
265
267
268
268
269
270
270
270
271
272
273
273
273
275
275
275
275
276
276
277
Конструкция RETURNING
Методы MAP и ORDER
MAP
ORDER
Рекомендации по использованию методов MAP и ORDER
Итоги
12 Сборные конструкции
Вложенные таблицы
Объявление вложенной таблицы
Инициализация таблиц
Добавление элементов в существующую таблицу
Вложенные таблицы в базе данных
Работа с таблицей целиком
Работа с отдельными строками
Вложенные и индексные таблицы
Изменяемые массивы
Объявление изменяемого массива
Инициализация изменяемых массивов
Работа с элементами изменяемых массивов
Изменяемые массивы в базе данных
Работа с хранимыми изменяемыми массивами
Изменяемые массивы и вложенные таблицы
Методы сборных конструкций
EXISTS
COUNT
LIMIT
FIRST и LAST
NEXT и PRIOR
EXTEND
TRIM
DELETE
Итоги
13 Среды выполнения программ PL/SQL
Различные системы поддержки PL/SQL
Замечания относительно PL/SQL на станции клиента
PL/SQL на сервере
SQL*Plus
Управление блоками в SQL*Plus
Переменные подстановки
Переменные привязки SQL*Plus
Вызов хранимых процедур с помощью EXECUTE
Использование файлов
Использование команды SHOW ERRORS
Предкомпиляторы Oracle
279
279
279
280
281
281
283
284
284
284
286
286
288
290
290
290
291
291
291
292
292
294
294
294
295
296
296
296
297
299
300
302
303
304
306
306
306
306
307
308
309
309
310
311
Переменные привязки в предкомпиляторах
Встраивание блока в программу
Переменные-индикаторы
Обработка ошибок
Параметры, необходимые для работы предкомпилятора
OCI
Рекомендации по использованию блоков PL/SQL в OCI
Структура вызовов OCI
SQL-Station
Среда функционирования кодировщика
Вызов хранимой процедуры
Выполнение SQL-сценария
PL/SQL на станции клиента
Назначение клиентской системы
Oracle Forms
PL/SQL Editor
Object Navigator
Procedure Builder
Область просмотра
Область командной строки
Отладка PL/SQL в диалоговом режиме
Оболочка PL/SQL
Запуск оболочки
Входные и выходные файлы
Проверка синтаксиса и семантики
Рекомендации по работе с оболочкой
Итоги
14 Тестирование и отладка
Диагностика неисправностей
Рекомендации по отладке программ
Поиск места возникновения ошибки
Определение вида ошибки
Сокращение программы для построения тестового примера
Создание среды тестирования
Модуль Debug
Ввод данных в тестовые таблицы
Ситуация 1
Ситуация 1: модуль Debug
Ситуация 1: использование модуля Debug
Ситуация 1: комментарии
DBMS_OUTPUT
Модуль DBMS_OUTPUT
Процедуры в DBMS_OUTPUT
Использование модуля DBMS_OUTPUT
311
312
312
313
314
314
315
315
317
318
319
320
321
321
322
322
323
323
323
323
324
325
325
325
326
326
326
327
328
328
328
328
328
328
329
329
329
331
332
336
336
336
337
338
Ситуация 2
Ситуация 2: модуль Debug
Ситуация 2: использование модуля Debug
Ситуация 2: комментарии
Отладчики PL/SQL
Procedure Builder
Ситуация 3
Ситуация 3: отладка с помощью Procedure Builder
Ситуация 3: комментарии
SQL-Station
Ситуация 4
Ситуация 4: Отладчик SQL-Station
Ситуация 4: комментарии
Сравнение Procedure Builder и SQL-Station
Методологии программирования
Модульное программирование
Нисходящее проектирование
Абстрактное представление данных
Итоги
15 Динамический PL/SQL
Введение
Статический и динамический SQL
Обзор модуля DBMS_SQL
Обработка операторов DML, не являющихся запросами, и операторов
DDL
Открытие курсора
Грамматический разбор оператора
Привязка входных переменных
Выполнение оператора
Закрытие курсора
Пример
Обработка операторов DDL
Обработка запросов
Грамматический разбор оператора
Определение выходных переменных
Считывание строк
Запись результатов в переменные PL/SQL
Пример
Обработка блоков PL/SQL
Грамматический разбор оператора
Считывание значений выходных переменных
Пример
Использование параметра out_value_size
PL/SQL в работе: выполнение произвольных хранимых процедур
339
340
341
344
344
345
345
346
349
349
350
351
352
353
353
353
354
355
355
357
358
358
359
362
362
362
363
365
365
365
366
367
368
368
370
370
372
374
374
375
376
377
378
Новые возможности DBMS_SQL в PL/SQL 8.0
Грамматический разбор больших строк символов SQL
Обработка массивов с помощью DBMS SQL
BIND ARRAY
DEFINE_ARRAY
Пример обработки массивов
Описание списка выбора
Другие процедуры
Считывание данных типа LONG
DEFINE_COLUMN_LONG
COLUMN_VALUE_LONG
Дополнительные функции по обработке ошибок
LAST_ERROR_POSITION
LAST_ROW_COUNT
LAST_ROW_ID
LAST_SQL_FUNCTION_CODE
IS_OPEN
PL/SQL в работе: запись данных LONG в файл
Привилегии и DBMS_SQL
Привилегии, необходимые для работы с DBMS_SQL
Роли и DBMS_SQL
Сравнение DBMS_SQL с другими динамическими средствами
Описание списка выбора
Обработка массивов
Операции над фрагментами данных типа LONG
Различия в интерфейсах
Советы и рекомендации
Повторное использование курсоров
Полномочия
Операции DDL и зависание
Итоги
16 Взаимодействие между соединениями
DBMS.PIPE
Посылка сообщений
PACK_MESSAGE
SEND_MESSAGE
Получение сообщений
RECEIVE_MESSAGE
NEXT_ITEM_TYPE
UNPACK_MESSAGE
Создание программных каналов и управление ими
Программные каналы и разделяемый пул
Общие и частные программные каналы
Процедура PURGE
385
385
:386
336
387
.388
390
393
393
393
.393
394
394
394
394
394
395
395
397
397
397
398
398
398
398
399
399
399
399
399
399
401
402
405
405
406
406
407
407
408
408
408
408
409
Привилегии и безопасность
Частные каналы
Установление протокола связи
Форматирование данных
Адресация данных
Пример
Debug.pc
Модуль Debug
Комментарии
Модуль DBMS_ALERT
Посылка оповещений
Получение оповещений
Регистрация
Ожидание конкретного оповещения
Ожидание любого из оповещений
Другие процедуры
Отмена регистрации
Интервалы опроса
Оповещения и словарь данных
Сравнение модулей DBMS_PIPE и DBMS_ALERT
Итоги
17 Улучшенная организация очередей Oracle
Введение
Компоненты средства Advanced Queuing
Операция ENQUEUE
Операция DEQUEUE
Очереди
Таблицы очередей
Агенты
Менеджер времени
Реализация Advanced Queuing
Операции над очередями
Вспомогательные типы
SYS.AQ$_AGENT
AQ$_RECIPIENT_LIST_Т
MESSAGE_PROPERTIES_Т
ENQUEUE_OPTIONS_Т
DEQUEUE_OPTIONS_T
Константы перечислимого типа
ENQUEUE
DEQUEUE
Администрирование очередей
Подпрограммы модуля DBMS_AQADM
CREATE_QUEUE_TABLE
409
410
410
411
411
411
411
414
416
417
417
417
417
418
418
419
419
419
419
420
422
423
424
424
424
425
425
425
425
425
426
426
426
426
427
427
428
429
430
430
431
432
432
432
DROP_QUEUE_TABLE
CREATE_QUEUE
DROP_QUEUE
ALTER_QUEUE
START_QUEUE
STOP_QUEUE
ADD_SUBSCRIBER
REMOVE_SUBSCRIBER
QUEUE_SUBSCRIBERS
GRANT_TYPE_ACCESS
START_TIME_MANAGER
STOP_TIME_MANAGER
Привилегии на работу с очередями
AO_ADMINISTRATOR_ROLE
AQ_USER_ROLE
Доступ к объектным типам Oracle Advanced Queuing
Очереди и словарь данных
Представление для таблицы очередей
DBA_QUEUE_TABLES/USER_QUEUE_TABLES
DBA_QUEUES/USER_QUEUES
Подробные примеры
Создание очередей и таблиц очередей
Простая постановка в очередь и простой вывод из очереди
Очистка очереди
Постановка в очередь и вывод из очереди по приоритету
Постановка в очередь и вывод из нее при помощи идентификатора
сообщения или идентификатора корреляции
Просмотр очереди
Работа с очередями исключительных ситуаций
Удаление очередей
Итоги
18 Задания для баз данных и файловый ввод/вывод
Задания для баз данных
Фоновые процессы
Выполнение заданий
SUBMIT
RUN
Неработоспособные задания
Удаление задания
Изменение задания
Просмотр заданий в словаре данных
Среды выполнения заданий
Файловый ввод/вывод
Безопасность
433
434
435
435
436
436
436
436
436
437
437
437
437
437
437
437
437
437
438
439
439
439
441
442
443
445
447
449
451
452
453
454
454
455
455
457
458
458
458
459
459
459
459
Безопасность базы данных
Безопасность операционной системы
Исключительные ситуации, устанавливаемые в UTL_FILE
Открытие и закрытие файлов
FOPEN
FCLOSE
IS_OPEN
FCLOSE_ALL
Файловый вывод
PUT
NEW_LINE
PUT_LINE
PUTF
FFLUSH
Файловый ввод
Примеры
Модуль Debug
Загрузка информации о студентах
Печать характеристик студентов
Итоги
19 Программа Oracle Webserver
Среда Webserver
Агент PL/SQL
Описатель соединения с базой данных
Сравнение CGI и WRB
Указание параметров процедур
Web-пакет PL/SQL
НТР и HTF
Печать
Константы
Заголовок
Тело
Списки
Форматирование символов
Физическое форматирование
Формы
Таблицы
OWA_UTIL
Утилиты HTML
Утилиты динамического SQL
Временные утилиты
OWA_IMAGE
OWA_COOKIE
Типы данных
459
460
461
461
461
462
462
462
463
463
463
463
464
465
465
465
465
467
469
472
473
474
475
475
476
476
478
478
479
480
480
480
482
484
485
485
488
490
490
491
494
496
498
498
SEND
GET
GET_ALL
REMOVE
Пример
Среды разработки процедур OWA
OWA_UTIL.SHOWPAGE
SQL-Station Coder
Итоги
20 Внешние процедуры
Понятие внешней процедуры
Порядок вызова внешней процедуры
Создание процедуры
Конфигурирование прослушивающего процесса SQL*Net
Создание библиотеки
Создание процедуры-оболочки
Отображение параметров
Сравнение типов данных PL/SQL и типов данных C
Виды параметров
Свойства параметров
Внешние функции и модульные процедуры
Значения, возвращаемые функциями
Переопределение
RESTRICT_REFERENCES
Обратные вызовы базы данных
Служебные подпрограммы
OCIExtProcRaiseExcp
OCIExtProcRaiseExcpWithMsg
OCIExtProcAllocCallMemory
Выполнение SQL-операторов во внешней процедуре
OCIExtProcGetEnv
Ограничения
Советы, рекомендации и ограничения
Отладка внешних процедур
Прямой вызов из С
Соединение с процессом extproc с помощью отладчика
Рекомендации
Ограничения
Итоги
21 Большие объекты
Понятие объекта LOB
Хранение объектов LOB
Объекты LOB в DML
Инициализация столбца LOB
499
499
499
499
500
501
501
502
502
503
504
505
505
506
508
509
510
511
513
514
516
516
517
517
517
517
518
519
519
521
521
521
521
521
521
521
523
523
524
525
526
527
528
528
Пример
Работа с объектами BFILE
Каталоги
Привилегии, необходимые для работы с каталогами
Каталоги в словаре данных
Удаление каталогов
Открытие и закрытие объектов BFILE
Объекты BFILE в DML
Инициализация столбцов BFILE
Сравнение семантики копирования и ссылочной семантики
Удаление локаторов объектов BFILE
Модуль DBMS_LOB
Подпрограммы DBMS_LOB
APPEND
COMPARE
COPY
ERASE
FILECLOSE
FILECLOSEALL
FILEEXISTS
FILEGETNAME
FILEISOPEN
FILEOPEN
GETLENGTH
INSTR
LOADFROMFILE
READ
SUBSTR
TRIM
WRITE
Исключительные ситуации, устанавливаемые подпрограммами
модуля DBMS_LOB
Сравнение DBMS_LOB и OCI
PL/SQL в работе: копирование данных LONG в объект LOB
Итоги
22 Производительность и настройка
Разделяемый пул
Структура экземпляра Oracle
Процессы
Память
Файлы
Функционирование разделяемого пула
Сбрасывание содержимого разделяемого пула
Триггеры и разделяемый пул
528
529
529
530
530
530
530
530
530
531
531
532
532
533
533
534
535
536
536
536
536
536
537
537
537
538
541
542
543
543
544
544
545
547
549
550
550
550
551
552
552
553
553
Разделяемый пул и многопоточный сервер
Определение размера разделяемого пула
Размеры хранимых подпрограмм
Память сеанса
Закрепление объектов
KEEP
UNKEEP
SIZES
Настройка SQL-операторов
Определение плана выполнения
EXPLAIN PLAN
Утилита TKPROF
SQL-Station Plan Analyzer
Использование плана
NESTED LOOP
TABLE ACCESS(FULL)
TABLE ACCESS(BY ROWID)
Работа с сетью
Использование клиентского PL/SQL
Недопущение повторного грамматического разбора
Обработка массивов
Итоги
Приложения
А Зарезервированные слова PL/SQL
В Руководство по работе со встроенными модулями DBMS
Создание модулей
Описание модулей
DBMS_ALERT
DBMS_APPLICATION_INFO
SET_MODULE
READ_MODULE
SET_ACTION
SET_CLIENT_INFO
READ_CLIENT_INFO
DBMS_AQ и DBMS_AQADM
DBMS_DEFER, DBMS_DEFER_SYS и DBMS_DEFER_QUERY
DBMS_DDL
ALTER_COMPILE
ANALYZE_OBJECT
DBMS_DESCRIBE
DESCRIBE_PROCEDURE
DBMS_JOB
DBMS_LOB
DBMS_LOCK
553
554
554
554
555
555
555
555
556
556
556
557
559
561
561
561
561
561
562
562
562
562
563
567
568
569
569
569
569
569
569
569
569
570
570
570
570
570
571
571
573
573
573
ALLOCATE_UNIQUE
REQUEST
CONVERT
RELEASE
SLEEP
DBMS_OUTPUT
DBMS_PIPE
DBMS_REFRESH и DBMS_SNAPSHOT
DBMS_REPCAT, DBMS_REPCAT_AUTH и
DBMS_REPCAT_ADMIN
DBMS_ROWID
DBMS_SESSION
SET_ROLE
SET_SQL_TRACE
SET_NLS
CLOSE_DATABASE_LINK
SET_LABEL
SET_MLS_LABEL_FORMAT
RESET_PACKAGE
UNIQUE_SESSION_ID
DBMS_SHARED_POOL
DBMS_SQL
DBMS_TRANSACTION
Команды SET TRANSACTION
Команды ALTER SESSION ADVISE
Команды COMMIT
Команды ROLLBACK и SAVEPOINT
BEGIN_DISCRETE_TRANSACTION
PURGE_MIXED
LOCAL_TRANSACTION_ID
STEP_ID
DBMS_UTILITY
COMPILE_SCHEMA
ANALYZE_SCHEMA
FORMAT_ERROR_STACK
FORMAT_CALL_STACK
IS_PARALLEL_SERVER
GET_TIME
NAME_RESOLVE
PORT_STRING
UTL_FILE
С Глоссарий средств PL/SQL
D Словарь данных
Понятие словаря данных
573
573
574
575
575
575
575
576
576
576
576
576
576
576
576
576
577
577
577
577
577
577
577
577
578
578
578
578
578
578
578
578
579
579
579
579
579
579
580
580
581
593
594
Соглашения по именованию
Полномочия
Представления словаря all_*/user_*/dba_*
Dependencies (зависимости)
Collections (сборные конструкции)
Compile Errors (ошибки компиляции)
Directories (каталоги)
Jobs (задания)
Libraries (библиотеки)
LOBs (большие объекты)
Object Methods (объектные методы)
Object Method Parameters (параметры объектных методов)
Object Method Results (результаты объектных методов)
Object References (ссылки на объекты)
Object Type Attributes (атрибуты объектных типов)
Schema Objects (объекты схем)
Source Code (исходный программный текст)
Tables (таблицы)
Table Columns (столбцы таблиц)
Triggers (триггеры)
Trigger Columns (столбцы триггеров)
Views (представления)
Другие представления словаря
dbms_alert_info
dict_columns
594
594
595
595
596
596
597
597
598
599
599
600
600
601
601
601
602
602
604
605
606
606
606
606
607
Download