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