| Каталог | Оглавление | Индекс раздела |
![]() |
Основы работы в среде Oracle SQL*Plus 8.0 |
SQL*Plus является приложением в составе СУБД Oracle, обеспечивающим интерактивное выполнение операторов языка SQL для определения данных, манипулирования данными и определения правил доступа к СУБД Oracle. Часто используется также как инструмент конечного пользователя для создания отчетов.
SQL*Plus может применяться в режиме командной строки сеанса MS DOS или в режиме прикладного окна SQL*Plus. В данной лабораторной работе рекомендуется применять режим прикладного окна SQL*Plus. Поэтому ниже кратко описывается применение SQL*Plus именно в таком режиме. Полную информацию о возможностях приложения SQL*Plus и способах их использования - см. в документации СУБД Oracle:
Для запуска прикладного окна SQL*Plus в среде Windows NT/9x:

Рис.1. Окно Log On

Происходит соединение с базой данных, при этом появляется информационное окно "Oracle StartUp" (рис.2), сменяющиеся сообщения в котором отслеживают ход процесса соединения. После завершения процесса окно "Oracle StartUp" исчезает, и окно приложения SQL*Plus приобретает вид, показанный на рис.3.

Рис.2. Окно Oracle Startup

Рис.3. Окно приложения SQL*Plus
SQL*Plus выводит приглашение SQL> в своем окне.
Операторы SQL вводятся после приглашения. Оператор может занимать более одной строки. При переходе на вторую и последующие строки SQL*Plus автоматически выставляет перед строкой ее номер.
При завершении оператора следует поставить точку с запятой и нажать на клавиатуре клавишу Enter.
Оператор SQL выполняется и результаты его выполнения выводятся в окно приложения. Пример ввода и выполнения оператора SQL показан на рис.4.

Рис.4. Пример выполнения запроса
Результаты имеют вид таблицы, первые две строки которой - заголовок - имена столбцов и подчеркивания, отделяющие имена столбцов от данных. При большом количестве строк в результирующей таблице она разбивается на "страницы", каждая из которых содержит 21 строку данных. В начале каждой "страницы" повторяется заголовок таблицы.
Ширина столбцов таблицы определяется типами данных в столбцах.
Общая ширина строки вывода - не более 97 символов. Если строка превышает указанное число, она разбивается на две и более строк (при этом удобство восприятия таблицы существенно ухудшается).
Последняя строка - количество выбранных строк - выводится только в том случае, если количество выбранных строк больше 5.
При выполнении операторов модификации данных (INSERT, UPDATE, DELETE) результат выполнения запроса представляется в виде единственной строки, сообщающей, сколько строк таблицы подверглось изменениям, например:
SQL> insert into location values(2,'2'); 1 row created.или
SQL> delete from location where location_id<5; 2 rows deleted.
Вся информация, введенная и выведенная в ходе сеанса сохраняется в окне приложения SQL*Plus и может быть возвращена в зону видимости при помощи ползунка протяжки.
В среде SQL*Plus можно выполнять следующие операторы SQL:
| ALTER | EXPLAIN | SAVEPOINT |
| ANALYZE | GRANT | SELECT |
| AUDIT | INSERT | SET ROLE |
| COMMENT | LOCK TABLE | SET TRANSACTION |
| COMMIT | NOAUDIT | TRUNCATE |
| CREATE | RENAME | UPDATE |
| DELETE | REVOKE | |
| DROP | ROLLBACK |
Синтаксис и семантика SQL подробно описаны в:
В Главном меню окна приложения предлагает подменю:
File Edit Search Options Help
Меню File содержит следующие команды:
| Команды меню File | Описание |
| Open | Команда Open читает ранее сохраненный командный файл SQL. По умолчанию командные файлы SQL имеют расширение .SQL. |
| Save | Команда Save имеет три подкоманды: Save Create, Save Replace, и Save Append. |
|
Сохраняет содержимое буфера (последний выполненный запрос) SQL*Plus в командном файле SQL с заданным именем. |
|
Заменяет содержимое существующего командного файла SQL содержимым буфера SQL*Plus. Если файл с заданным именем не существует, создает его. |
|
Добавляет содержимое буфера SQL*Plus в конец командном файле SQL с заданным именем. |
| Save as | Сохраняет содержимое буфера SQL*Plus в командном файле SQL с заданным именем. |
| Spool | Команда Spool имеет две подкоманды: Spool File и Spool Off. |
|
Записывает результат запроса в файл. По умолчанию файл результата получает расширение .LST. |
|
Отменяет запись результатов в файл |
| Run | Команда Run отображает и выполняет оператор SQL, находящийся в буфере SQL*Plus. |
| Cancel | Команда Cancel отменяет выполняющуюся операцию. (То же самое делает комбинация клавиш Ctrl+C). |
| Exit | Команда Exit фиксирует все изменения, сделанные в базе данных и закрывает окно приложения SQL*Plus. |
Меню Edit содержит следующие команды:
| Команды меню Edit | Описание |
| Copy Past |
Назначение команд Copy и Past такое же, как и во всех других приложениях. |
| Clear | Команда Clear очищает окно приложения и буфер SQL*Plus. (То же самое делает комбинация клавиш Shift+Del). |
| Edit | Команда Edit имеет две подкоманды: Invoke Editor и Define Editor. |
|
Загружает содержимое буфера SQL*Plus в текстовый редактор. По умолчанию содержимое буфера составляет файл AFIEDT.BUF. |
|
Определяет текстовый редактор, который будет вызываться подкомандой Invoke Editor. |
Меню Search содержит следующие команды:
| Команды меню Search | Описание |
| Find | Команда Find ищет в окне приложения SQL*Plus заданный текст. Поиск начинается с начала содержимого окна. (То же самое делает комбинация клавиш Alt+F3). |
| Find Next | Команда Find Next ищет в окне приложения SQL*Plus следующее вхождение заданный текст. (То же самое делает клавиша F3). |
Меню Options содержит следующие команды:
| Команды меню Options | Описание |
| Enviroment | Команда Enviroment дает возможность установить системные переменные для изменения настроек текущего сеанса SQL*Plus. |
Несмотря на богатые на первый взгляд возможности, предлагаемые меню приложения, SQL*Plus на самом деле плохо приспособлен для редактирования запросов. Редактирование запросов непосредственно в окне приложения невозможно, а в окне редактора может редактироваться только содержимое буфера - т.е., последний запрос.
Поэтому мы предлагаем следующий порядок работы в среде SQL*Plus:
| Каталог | Оглавление | Индекс раздела |