- •Приложение. Утилита sql*Plus. Создание и выполнение сценариев Назначение sql*Plus
- •Базовые понятия
- •Расширенные формулы Бэкуса-Наура
- •Запуск sql*Plus и выход из него
- •Опции командной строки
- •Регистрационная информация
- •Начальный сценарий
- •Использование профилей сайта и пользователя
- •Выход из sql*Plus
- •Подключение к стандартной и удаленной базе данных
- •Использование команды connect
- •Формат строки связи для удаленной базы данных
- •Основные команды
- •Выполнение команд Буфер sql
- •Выполнение операторов sql
- •Выполнение блоков pl/sql
- •Выполнение команд sql*Plus
- •Прекращение команды по ходу работы
- •Получение информации о времени выполнения команды
- •Выполнение команд базовой операционной системы
- •Получение оперативной справки
- •Команда help
- •Команда describe
- •Редактирование команд
- •Форматирование результатов запросов
- •Стандартный формат столбцов
- •Команда column
- •Команда break
- •Команда compute
- •Команда clear
- •Команды btitle и ttitle
- •Команды repheader и repfooter
- •Копирование данных из одной базы данных в другую
- •Команды для работы с файлами
- •Создание командных файлов
- •Команда save
- •Команда edit
- •Загрузка командных файлов
- •Выполнение командных файлов
- •Передача параметров командных файлов при вызове
- •Сокращенные формы команды start (@, @@)
- •Коды возврата командных файлов
- •Комментарии в командных файлах
- •Запоминание установок среды sql*Plus
- •Запись в файл и печать результатов выполнения запросов
- •Параметры командных файлов
- •Команды define и undfefine
- •Использование подставляемых переменных
- •Подстановка без повторного запроса
- •Подстановка параметров командных файлов
- •Ограничения
- •Системные переменные, влияющие на подстановку
- •Взаимодействие с пользователем
- •Команда prompt
- •Команда accept
- •Команда pause
- •Связываемые переменные
- •Команда variable
- •Команда print
- •Трассировка операторов
- •Настройка среды sql*Plus
- •Команда set
- •Команда show
- •Другие полезные команды
- •Команда execute
- •Команда password
- •Команды администрирования базы данных
- •Запуск базы данных
- •Остановка базы данных
- •Управление архивированием журналов повторного выполнения
- •Восстановление базы данных
- •Дополнительные источники информации
Приложение. Утилита SQL*Plus. Создание и выполнение сценариев 3
Назначение SQL*Plus 3
Базовые понятия 3
Расширенные формулы Бэкуса-Наура 3
Запуск SQL*Plus и выход из него 3
Опции командной строки 4
Регистрационная информация 5
Начальный сценарий 6
Использование профилей сайта и пользователя 6
Выход из SQL*Plus 6
Подключение к стандартной и удаленной базе данных 6
Использование команды CONNECT 7
Формат строки связи для удаленной базы данных 7
Основные команды 8
Выполнение команд 8
Буфер SQL 8
Выполнение операторов SQL 8
Выполнение блоков PL/SQL 9
Выполнение команд SQL*Plus 9
Прекращение команды по ходу работы 9
Получение информации о времени выполнения команды 9
Выполнение команд базовой операционной системы 10
Получение оперативной справки 11
Команда HELP 11
Команда DESCRIBE 11
Редактирование команд 12
Форматирование результатов запросов 13
Стандартный формат столбцов 13
Команда COLUMN 13
Команда BREAK 17
Команда COMPUTE 18
Команда CLEAR 21
Команды BTITLE и TTITLE 22
Команды REPHEADER и REPFOOTER 23
Копирование данных из одной базы данных в другую 23
Команды для работы с файлами 25
Создание командных файлов 25
Команда SAVE 25
Команда EDIT 26
Загрузка командных файлов 26
Выполнение командных файлов 27
Передача параметров командных файлов при вызове 27
Сокращенные формы команды START (28
Коды возврата командных файлов 28
Комментарии в командных файлах 29
Запоминание установок среды SQL*Plus 30
Запись в файл и печать результатов выполнения запросов 31
Параметры командных файлов 33
Команды DEFINE и UNDFEFINE 33
Использование подставляемых переменных 34
Подстановка без повторного запроса 34
Подстановка параметров командных файлов 35
Ограничения 36
Системные переменные, влияющие на подстановку 36
Взаимодействие с пользователем 36
Команда PROMPT 36
Команда ACCEPT 37
Команда PAUSE 38
Связываемые переменные 39
Команда VARIABLE 39
Команда PRINT 41
Трассировка операторов 41
Настройка среды SQL*Plus 43
Команда SET 44
Команда SHOW 49
Другие полезные команды 51
Команда EXECUTE 52
Команда PASSWORD 52
Команды администрирования базы данных 52
Запуск базы данных 52
Остановка базы данных 53
Управление архивированием журналов повторного выполнения 54
Восстановление базы данных 56
Дополнительные источники информации 59
Приложение. Утилита sql*Plus. Создание и выполнение сценариев Назначение sql*Plus
Утилита SQL*Plus позволяет выполнять команды SQL и блоки PL/SQL, а также решать ряд других задач. С помощью SQL*Plus можно:
вводить, редактировать, запоминать, загружать и выполнять команды SQL и блоки PL/SQL;
форматировать, создавать, сохранять, печатать и публиковать в Web результаты выполнения запросов (отчеты);
получать описание (имена и типы столбцов) любой таблицы и представления;
обращаться к удаленным базам данных и копировать из них данные;
посылать и принимать сообщения от конечных пользователей;
администрировать базу данных.
Базовые понятия
При работе с SQL*Plus используются следующие базовые понятия:
Команда |
Команда SQL*Plus или оператор SQL Oracle. |
Блок PL/SQL |
Группа взаимосвязанных операторов PL/SQL, оформленная в виде анонимного блока. |
Таблица |
Базовая единица хранения данных в Oracle. |
Запрос |
SQL-оператор SELECT, выбирающий информацию из одной или нескольких таблиц. |
Результаты запроса |
Данные, возвращенные запросом. |
Отчет |
Результаты запроса, сформатированные с помощью команд SQL*Plus. |
Расширенные формулы Бэкуса-Наура
При описании синтаксиса команд SQL*Plus использованы расширенные формулы Бэкуса- Наура (БНФ). Расширенные БНФ являются способом сокращенной записи контекстно- свободных грамматик. Нетерминальные символы (определяемые понятия, конструкции и команды SQL*Plus) взяты в угловые скобки. Терминальные символы выделены жирным шрифтом. Учтите, что команды SQL*Plus не зависят от регистра терминальных символов.
Метасимвол ::= означает "по определению есть". Метасимвол | обозначает, что данная формула является сокращенной записью нескольких формул с одинаковыми левыми частями и различными цепочками в правой части (т.е. возможен один из разделенных этим символом вариантов). Пара метасимволов [ ] используется для обозначения того, что находящаяся между ними цепочка может содержаться, а может и не содержаться в правой части формулы. Пара метасимволов { } означает, что содержащаяся между ними цепочка может повторяться ноль или более раз. Приоритет метасимвола | выше, чем у пар [ ] и { }.
Немного подробнее о расширенных БНФ можно прочитать здесь.
Запуск sql*Plus и выход из него
Для запуска утилиты SQL*Plus используется команда операционной системы, обычно - sqlplus. Запуск выполняется из командного интерпретатора или окна командной строки.
В версиях для операционных систем Microsoft использовались другие имена команды для вызова SQL*Plus, например, sqlplus30. В настоящее время (начиная с версии 8.1.5) в этих операционных системах имеется две версии этой утилиты: sqlplus, работающая в окне командной строки, и оконная версия, sqlplusw.
Общий синтаксис вызова SQL*Plus имеет вид:
sqlplus [<опции>] [<регистрационная информация>] [<начальный сценарий>]
где:
<опции> ::=
-H[ELP] | -V[ERSION] | -M[ARKUP] <опция разметки> [-R[ESTRICT] <уровень> [-S[ILENT]]]
<опция разметки> ::=
HTML [<вкл-выкл>] [HEAD <текст>] [BODY <текст>] [TABLE <текст>] [ENTMAP <вкл-выкл>] [SPOOL <вкл-выкл>] [PRE[FORMAT] <вкл-выкл>]
<вкл-выкл> ::=
ON | OFF
<уровень> ::=
1 | 2 | 3
<регистрационная информация> ::=
<пользователь и база данных> [AS <роль пользователя>] | /NOLOG
<пользователь и база данных> ::=
<имя пользователя>[/<пароль>][@<строка связи>] | / <роль пользователя> ::=
SYSOPER | SYSDBA
<начальный сценарий> ::=
@<имя или ссылка> [<аргументы сценария>]
<имя или ссылка> ::=
<имя файла>[.<расширение>] | <URI>
<аргументы сценария> ::=
<аргумент>{<пробелы><аргумент>}