- •Краткий справочник по Oracle7
- •1. Введение
- •2. Имена объектов базы данных
- •3. Зарезервированные слова Oracle7 и pl/sql
- •4. Литералы, операторы и выражения
- •4.1. Условные обозначения
- •4.2. Иерархия операторов
- •4.3. Синтаксис выражений (expr)
- •4.4. Синтаксис условий (condition)
- •4.5. Логические операторы
- •4.6. Операторы, используемые в предложении select
- •6. Комментарии
- •7. Функции sql и oracle7
- •7.1 Числовые функции
- •7.2 Символьные функции
- •7.3. Функции работы с датами и временем
- •7.4. Функции преобразования
- •7.5. Групповые функции
- •7.6. Прочие функции
- •8. Форматы
- •8.2. Символьные форматы
- •8.3. Форматы дат и времени
- •8.4. Префиксы и суффиксы, используемые в форматах
- •9. Псевдо- столбцы и таблицы
- •10. Предложения (команды) sql Oracle7
- •1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
- •1. Введение
Краткий справочник по Oracle7
1. Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2. Имена объектов базы данных . . . . . . . . . . . . . . . . . . . . . . . 4
3. Зарезервированные слова Oracle7 и PL/SQL . . . . . . . . . . . . . . . . 4
4. Литералы, операторы и выражения . . . . . . . . . . . . . . . . . . . . . 5
4.1. Условные обозначения . . . . . . . . . . . . . . . . . . . . . . . . 5
4.2. Иерархия операторов . . . . . . . . . . . . . . . . . . . . . . . . . 6
4.3. Синтаксис выражений (expr) . . . . . . . . . . . . . . . . . . . . . 6
4.4. Синтаксис условий (condition) . . . . . . . . . . . . . . . . . . . . 6
4.5. Логические операторы . . . . . . . . . . . . . . . . . . . . . . . . 7
4.6. Операторы, используемые в предложении SELECT . . . . . . . . . . . . 7
5. Типы данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
6. Комментарии . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
7. Функции SQL и ORACLE7 . . . . . . . . . . . . . . . . . . . . . . . . . . 8
7.1. Числовые функции . . . . . . . . . . . . . . . . . . . . . . . . . . 9
7.2. Символьные функции . . . . . . . . . . . . . . . . . . . . . . . . . 9
7.3. Функции работы с датами и временем . . . . . . . . . . . . . . . . . 10
7.4. Функции преобразования . . . . . . . . . . . . . . . . . . . . . . . 11
7.5. Групповые функции . . . . . . . . . . . . . . . . . . . . . . . . . . 12
7.6. Прочие функции . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
8. Форматы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
8.1. Числовые форматы . . . . . . . . . . . . . . . . . . . . . . . . . . 13
8.2. Символьные форматы . . . . . . . . . . . . . . . . . . . . . . . . . 13
8.3. Форматы дат и времени . . . . . . . . . . . . . . . . . . . . . . . . 13
8.4. Префиксы и суффиксы, используемые в форматах . . . . . . . . . . . . 14
9. Псевдо- столбцы и таблицы . . . . . . . . . . . . . . . . . . . . . . . . 14
10. Предложения (команды) SQL Oracle7 . . . . . . . . . . . . . . . . . . . . 16
ALTER CLUSTER - модифицирует структуру индексированного или
хешированного кластера . . . . . . . . . . . . . . . . . . . . . 16
ALTER DATABASE - модифицирует структуру и (или) рабочий режим базы
данных Oracle7; позволяет восстановить базу данных . . . . . . . 16
ALTER FUNCTION - принудительно перекомпилирует функцию . . . . . . . . . 16
ALTER INDEX - модифицирует параметры хранения индекса . . . . . . . . . . 16
ALTER PACKAGE - принудительно перекомпилирует пакет . . . . . . . . . . . 16
ALTER PROCEDURE - принудительно перекомпилирует процедуру . . . . . . . . 16
ALTER PROFILE - модифицирует профиль ограничений ресурсов . . . . . . . . 17
ALTER RESOURCE COST - модифицирует веса ограничений сложного ресурса. . . 17
ALTER ROLE - изменяет пароль роли или метод аутентификации. . . . . . . . 17
ALTER ROLLBACK SEGMENT - изменяет доступность или параметры памяти
сегмента отката . . . . . . . . . . . . . . . . . . . . . . . . . 17
ALTER SEQUENCE - изменяет характеристики последовательности . . . . . . . 17
ALTER SESSION - модифицирует параметры сеанса базы данных . . . . . . . . 17
ALTER SNAPSHOT - модифицирует режим и (или) время получения "снимка"
базы данных или характеристики хранения . . . . . . . . . . . . . 17
ALTER SNAPSHOT LOG - модифицирует характеристики памяти для "снимка". . . 18
ALTER SYSTEM - динамически модифицирует некоторые текущие параметры
сервера базы данных . . . . . . . . . . . . . . . . . . . . . . . 18
ALTER TABLE - модифицирует физическую структуру таблицы, параметры
памяти и ограничения целостности . . . . . . . . . . . . . . . . 18
ALTER TABLESPACE - изменяет доступность табличной области, режим
архивации или параметры памяти, либо добавляет файлы данных
для увеличения емкости памяти табличной области . . . . . . . . . 18
ALTER TRIGGER - разрешает или запрещает запуск триггера . . . . . . . . . 18
ALTER USER - модифицирует учетные данные пользователя, пароль или
метод аутентификации . . . . . . . . . . . . . . . . . . . . . . 19
ALTER VIEW - вручную перекомпилирует представление . . . . . . . . . . . 19
ANALYZE - генерирует статистику оптимизатора либо создает для таблицы,
индекса или кластера список цепочки строк; может проверять
допустимость структуры индекса . . . . . . . . . . . . . . . . . 19
- 2 -
AUDIT - задает для системы и объектов базы данных параметры отслеживания 19
COMMENT - создает описание таблицы, представления, "снимка" или столбца . 19
COMMIT - завершает транзакцию, фиксируя изменения в базе данных . . . . . 19
CREATE CLUSTER - создает индексированный или хешированный кластер . . . . 19
CREATE CONTROLFILE - создает новый управляющий файл базы данных, 19
заменяющий испорченный управляющий файл или управляющий
файл с неверным размером . . . . . . . . . . . . . . . . . . . . 20
CREATE DATABASE - создает базу данных . . . . . . . . . . . . . . . . . . 20
CREATE DATABASE LINK - определяет имя маршрута для удаленной базы
данных; связь с такой базой данных доступна и без Distributed
Database, но только для операций чтения . . . . . . . . . . . . . 20
CREATE FUNCTION - создает хранимую функцию . . . . . . . . . . . . . . . 20
CREATE INDEX - создает индекс базы данных . . . . . . . . . . . . . . . . 20
CREATE PACKAGE - создает спецификацию хранимого пакета . . . . . . . . . 20
CREATE PACKAGE BODY - создает тело хранимого пакета . . . . . . . . . . . 20
CREATE PROCEDURE - создает хранимую процедуру . . . . . . . . . . . . . . 20
CREATE PROFILE - создает именованный профиль ограничения ресурса . . . . 20
CREATE ROLE - создает роль для группы связных полномочий . . . . . . . . 20
CREATE ROLLBACK SEGMENT - создает сегмент отката. . . . . . . . . . . . . 20
CREATE SCHEMA - создает в одном операторе несколько таблиц и
представлений для текущей учетной записи базы данных . . . . . . 21
CREATE SEQUENCE - создает именованную последовательность чисел . . . . . 21
CREATE SNAPSHOT - создает "снимок" удаленной базы данных. . . . . . . . . 21
CREATE SNAPSHOT LOG - создает для "снимка" обновленный журнал . . . . . . 21
CREATE SYNONYM - создает синоним для объекта базы данных. . . . . . . . . 21
CREATE TABLE - создает новую таблицу базы данных. . . . . . . . . . . . . 21
CREATE TABLESPACE - создает новую табличную область . . . . . . . . . . . 21
CREATE TRIGGER - создает для таблицы триггер базы данных. . . . . . . . . 21
CREATE USER - создает нового пользователя и пароль . . . . . . . . . . . 22
CREATE VIEW - создает представление для таблиц или других
представлений . . . . . . . . . . . . . . . . . . . . . . . . . . 22
DELETE - удаляет из таблицы базы данных одну или более строк . . . . . . 22
DROP CLUSTER - удаляет индексированный или хешированный кластер . . . . . 22
DROP DATABASE LINK - удаляет именованный маршрут к удаленной базе данных 22
DROP FUNCTION - удаляет хранимую функцию . . . . . . . . . . . . . . . . 22
DROP INDEX - удаляет индекс таблицы . . . . . . . . . . . . . . . . . . . 22
DROP PACKAGE - удаляет спецификацию и тело хранимого пакета . . . . . . . 22
DROP PACKAGE BODY - удаляет тело хранимого пакета . . . . . . . . . . . . 22
DROP PROCEDURE - удаляет хранимую процедуру . . . . . . . . . . . . . . . 22
DROP PROFILE - удаляет именованный профиль ограничений ресурсов . . . . . 22
DROP ROLE - удаляет роль или группу полномочий . . . . . . . . . . . . . 22
DROP ROLLBACK SEGMENT - удаляет сегмент отката . . . . . . . . . . . . . 22
DROP SEQUENCE - удаляет именованную последовательность чисел . . . . . . 22
DROP SNAPSHOT - удаляет "снимок" удаленной базы данных . . . . . . . . . 22
DROP SNAPSHOT LOG - удаляет удаляет журнал снимка . . . . . . . . . . . . 22
DROP SYNONYM - удаляет синоним таблицы или представления . . . . . . . . 22
DROP TABLE - удаляет таблицу базы данных . . . . . . . . . . . . . . . . 22
DROP TABLESPACE - удаляет табличную область . . . . . . . . . . . . . . . 22
DROP TRIGGER - удаляет триггер базы данных . . . . . . . . . . . . . . . 22
DROP USER - удаляет имя пользователя и связанные с ним объекты . . . . . 22
DROP VIEW - удаляет представление . . . . . . . . . . . . . . . . . . . . 22
EXPLAIN PLAN - помещает в таблицу базы данных стратегию оптимизации
для оператора SQL . . . . . . . . . . . . . . . . . . . . . . . . 22
GRANT - назначает для ролей и (или) пользователей роли, системные
полномочия и (или) полномочия на объекты . . . . . . . . . . . . 22
INSERT - вставляет в таблицу базы данных одну или более строк . . . . . . 22
LOCK TABLE - блокирует таблицу . . . . . . . . . . . . . . . . . . . . . 23
NOAUDIT - запрещает для системных объектов и объектов базы данных
параметры отслеживания . . . . . . . . . . . . . . . . . . . . . 23
- 3 -
RENAME - переименовывает таблицу, представление, последовательность
или синоним . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
REVOKE - отменяет для ролей и (или) пользователей назначений ролей,
системные полномочия и (или) полномочия на объекты . . . . . . . 23
ROLLBACK - отменяет изменения, внесенные текущей транзакцией . . . . . . 23
SAVEPOINT - идентифицирует промежуточную точку сохранения транзакции . . 23
SELECT - считывает все или конкретные столбцы из одной или более
строк одной или нескольких таблиц и (или) представлений . . . . . 23
SET ROLE - разрешает одну или более заданных ролей и запрещает все другие 24
SET TRANSACTION - задает характеристики транзакции . . . . . . . . . . . 24
TRUNCATE - удаляет все строки из таблицы и (необязательно) всю
выделенную для таблиц память на диске . . . . . . . . . . . . . . 24
UPDATE - обновляет все или конкретные строки таблицы . . . . . . . . . . 24
11. Фразы предложений (команд) SQL Oracle7 . . . . . . . . . . . . . . . . . 24
ARCHIVE LOG - устанавливает способ архивирования групп файлов регистрации 24
CONSTRAINT - определяет ограничения целостности таблиц . . . . . . . . . 24
DISABLE - маскирует ограничения целостности или все триггеры . . . . . . 25
DROP - удаляет ограничения целостности таблицы . . . . . . . . . . . . . 25
ENABLE - отменяет маскирование ограничений целостности или триггеров . . 25
Filespec - спецификация файла базы данных . . . . . . . . . . . . . . . . 25
RECOVER - исполняет восстановление средств информации . . . . . . . . . . 25
STORAGE - определяет характеристики хранения кластеров, табличных
пространств, таблиц, "снимков", индексов и сегментов отката . . . 25
WHERE - определяет подмножество строк . . . . . . . . . . . . . . . . . . 25
12. Язык PL/SQL - процедурные расширения языка SQL . . . . . . . . . . . . . 26
12.1. Основные конструкции языка PL/SQL . . . . . . . . . . . . . . . . . 26
12.2. Типы данных, переменные, константы и выражения . . . . . . . . . . . 26
12.2.1. Типы данных, доступные в PL/SQL . . . . . . . . . . . . . . . . 26
12.2.2. Таблицы PL/SQL . . . . . . . . . . . . . . . . . . . . . . . . 26
12.2.3. Записи PL/SQL . . . . . . . . . . . . . . . . . . . . . . . . . 27
12.2.4. Переменные, константы и выражения . . . . . . . . . . . . . . . 28
12.3. Присваивание переменным значений из таблиц базы данных . . . . . . . 28
12.3.1. Явный курсор . . . . . . . . . . . . . . . . . . . . . . . . . 29
12.3.1.1. Объявление курсора . . . . . . . . . . . . . . . . . . . . 29
12.3.1.2. Открытие курсора (OPEN) . . . . . . . . . . . . . . . . . 30
12.3.1.3. Выборка строк из курсора (FETCH) . . . . . . . . . . . . . 30
12.3.1.4. Закрытие курсора (CLOSE) . . . . . . . . . . . . . . . . . 32
12.3.1.5. Использование курсора в цикле FOR . . . . . . . . . . . . 32
12.3.1.6. Атрибуты явного курсора . . . . . . . . . . . . . . . . . 32
12.3.1.7. Изменение или удаление текущей строки курсора . . . . . . 33
12.3.2. Неявный курсор (SQL курсор) . . . . . . . . . . . . . . . . . . 34
12.3.2.1. SELECT ... INTO . . . . . . . . . . . . . . . . . . . . . 34
12.3.2.2. INSERT, UPDATE и DELETE . . . . . . . . . . . . . . . . . 34
12.3.2.3. Атрибуты неявного курсора (SQL курсора) . . . . . . . . . 34
12.4. Операторы управления выполнением программы . . . . . . . . . . . . . 35
12.4.1. Операторы условного перехода (IF ...) . . . . . . . . . . . . . 35
12.4.2. Метки и оператор безусловного перехода (GOTO) . . . . . . . . . 35
12.4.3. Операторы цикла (LOOP, WHILE...LOOP и FOR...LOOP) . . . . . . . 36
12.4.4. Операторы EXIT, EXIT-WHEN и NULL . . . . . . . . . . . . . . . 38
12.5. Обработка ошибок . . . . . . . . . . . . . . . . . . . . . . . . . . 39
12.5.1. Встроенные исключительные ситуации . . . . . . . . . . . . . . 39
12.5.2. Исключительные ситуации, определяемые пользователем . . . . . . 42
12.5.3. Обработчик OTHERS . . . . . . . . . . . . . . . . . . . . . . . 42
12.6. Транзакции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
12.7. О программах PL/SQL . . . . . . . . . . . . . . . . . . . . . . . . 43
12.8. Отладка программ PL/SQL . . . . . . . . . . . . . . . . . . . . . . 43
13. Представления словарей данных . . . . . . . . . . . . . . . . . . . . . . 44
14. Виртуальные представления словаря данных . . . . . . . . . . . . . . . . 47
15. Системные полномочия Oracle7 . . . . . . . . . . . . . . . . . . . . . . 48
16. Полномочия на объекты . . . . . . . . . . . . . . . . . . . . . . . . . . 50
17. Основные понятия и параметры, используемые в справочнике . . . . . . . . 50
- 4 -
