Ранее в блоге уже показывалось, что запускать новый сеанс SQL*Plus можно вводом в командной строке команды sqlplus. Однако вместе с этой командой в командной строке еще также можно указывать и несколько параметров и тем самым сразу же настраивать сеанс желаемым образом. В листинге ниже показано, как найти информацию обо всех параметрах командной строки, которые доступны в SQL*Plus.
$ sqlplus –help SQL*Plus: Release 11.1.0.6.0 - Production Copyright (c) 1982, 2007, Oracle. All rights reserved. Use SQL*Plus to execute SQL, PL/SQL and SQL*Plus statements. Usage 1: sqlplus -H | -V -H Displays the SQL*Plus version and the usage help. -V Displays the SQL*Plus version. Usage 2: sqlplus [ [] [] [] ] is: [-C ] [-L] [-M ""] [-R ] [-S] -C Sets the compatibility of affected commands to the version specified by . The version has the form "x.y[.z]". For example, -C 10.2.0 -F Enables the failover mode for a RAC environment. -L Attempts to log on just once, instead of reprompting on error. -M "" Sets automatic HTML markup of output. The options have the form: HTML [ON|OFF] [HEAD text] [BODY text] [TABLE text] [ENTMAP {ON|OFF}] [SPOOL {ON|OFF}] [PRE[FORMAT] {ON|OFF}] -R Sets restricted mode to disable SQL*Plus commands that interact with the file system. The level can be 1, 2 or 3. The most restrictive is -R 3 which disables all user commands interacting with the file system. -S Sets silent mode which suppresses the display of the SQL*Plus banner, prompts, and echoing of commands. is: ([/][@] | /) [AS SYSDBA | AS SYSOPER | AS SYSASM] | /NOLOG | [EDITION=value] Specifies the database account username, password and connect identifier for the database connection. Without a connect identifier, SQL*Plus connects to the default database. The AS SYSDBA, AS SYSOPER and AS SYSASM options are database administration privileges. can be in the form of Net Service Name or Easy Connect. @[ | [//]Host[:Port]/] is a simple name for a service that resolves to a connect descriptor. Example: Connect to database using Net Service Name and the database net service name is ORCL. sqlplus myusername/mypassword@ORCL Host specifies the host name or IP address of the database server computer. Port specifies the listening port on the database server. specifies the service name of the database you want to access. Example: Connect to database using Easy Connect and the Service name is ORCL. sqlplus myusername/mypassword@Host/ORCL The /NOLOG option starts SQL*Plus without connecting to a database. The EDITION specifies the value for Application Edition is: @|[.] [ ...] Runs the specified SQL*Plus script from a web server (URL) or the local file system (filename.ext) with specified parameters that will be assigned to substitution variables in the script. When SQL*Plus starts, and after CONNECT commands, the site profile (e.g. $ORACLE_HOME/sqlplus/admin/glogin.sql) and the user profile (e.g. login.sql in the working directory) are run. The files may contain SQL*Plus commands. Refer to the SQL*Plus User's Guide and Reference for more information. Используйте SQL*Plus для выполнения операторов SQL, PL/SQL и SQL*Plus Первый способ использования: sqlplus -H | -V -H Отображать справочную информацию о версии и применении SQL*Plus. -V Отображать версию SQL*Plus. Второй способ использования: sqlplus [ [<параметры>] [<регистрационные_данные>] [<запускаемый_сценарий>] ] <параметры>: [-C <версия>] [-L] [-M "<параметры>"] [-R <уровень>] [-S] -C <версия> Указывает, что выполняемые команды должны быть совместимы с версией, которая указана в <версия>. Версия задается в формате "x.y[.z]", например: -C 10.2.0. -F Активизировать режим обхода отказа для среды RAC. -L Пытаться входить в систему только один раз и не повторять попытку в случае ошибки. -M "<параметры>" Автоматически добавлять в вывод HTML-элементы. <параметры> имеют следующую форму: HTML [ON|OFF] [HEAD текст] [BODY текст] [TABLE текст] [ENTMAP {ON|OFF}] [SPOOL {ON|OFF}] [PRE[FORMAT] {ON|OFF}] -R <уровень> Использовать ограниченный режим, отключающий команды SQL*Plus, которые взаимодействуют с файловой системой. <уровень> может быть 1, 2 или 3. Самым строгим является уровень –R 3, при котором отключаются все пользовательские команды, которые позволяют взаимодействовать с файловой системой. -S Использовать режим молчания, подавляющий отображение баннера SQL*Plus, приглашений и команд echo. <регистрационные_данные>: (<имя_пользователя>[/<пароль>][@<идентификатор_подключения>] | /) [AS SYSDBA | AS SYSOPER | AS SYSASM] | /NOLOG | [EDITION=значение] Указывает, какое имя пользователя базы данных, пароль и идентификатор подключения нужно использовать для подключения к базе данных. Если не задать идентификатор подключения, SQL*Plus устанавливает соединение с базой данной по умолчанию. Параметры AS SYSDBA, AS SYSOPER и AS SYSASM представляют уровень административных привилегий, с которыми требуется подключаться к базе данных. На месте <идентификатор_подключения> может указываться либо имя сетевой службы, либо идентификатор простого подключения. @[<имя_сетевой_службы> | [//]хост[:порт]/<имя_службы>] <имя_сетевой_службы> - это имя службы, которое преобразуется в дескриптор подключения. Пример: подключение к базе данных с использованием имени сетевой службы ORCL: sqlplus myusername/mypassword@ORCL <хост> - имя хоста или IP-адрес компьютера, на котором находится сервер баз данных. <порт> - номер порта, который прослушивается на предмет поступления запросов на подключения к серверу баз данных. Пример: подключение к базе данных с использованием идентификатора простого подключения при имени службы ORCL: Параметр /NOLOG позволяет запускать SQL*Plus без подключения к базе данных. EDITION специфицирует значение, представляющее выпуск приложения. <запускаемый_сценарий>: @<URL-адрес>|<имя_файла>[.<расширение>] [<параметры> ...] Запускает указанный сценарий SQL*Plus c веб-сервера (URL-адреса) или из локальной файловой системы (из имя_файла.расширение) с заданными параметрами, которые будут присвоены содержащимся в нем переменным подстановки. При запуске сеанса SQL*Plus и после выполнения команд CONNECT запускается файл профиля сайта (например, $ORACLE_HOME/sqlplus/admin/glogin.sql) и файл профиля пользователя (например, login.sql, находящийся в рабочем каталоге текущего пользователя). В этих файлах тоже могут содержаться команды SQL*Plus. Более подробную информацию можно найти в руководстве и справочнике по SQL*Plus. $
Совет. В Oracle Database 11g файл login.sql выполняется при запуске SQL*Plus, а также при использовании команды CONNECT для установки подключения из сеанса SQL*Plus.
Ниже кратко поясняются наиболее важные из параметров, которые можно использовать при запуске сеанса SQL*Plus.
- Параметр режима молчания (-S). В случае вызова SQL*Plus с параметром –S сеанс будет выполняться в режиме молчания, т.е. без отображения вывода на экране. Запускать сеанс в режиме молчания может быть удобно при выполнении пакетных заданий и отсутствии необходимости в просмотре их вывода на экране. Особенно полезным режим молчания является при генерации отчетов, поскольку подавляет отображение баннеров, номеров версий и прочей подобной информации.
- Параметр регистрации без приглашения (-L). В случае вызова SQL*Plus с параметром –L новое приглашение на ввод имени пользователя и пароля после первой неудачной попытки входа отображаться не будет. Опять-таки, этот параметр удобно использовать при запуске пакетных заданий SQL через операционную систему.
- Параметр ограничения (-R). О том, как параметр –R можно использовать (на трех различных уровнях) для отключения определенных команд операционной системы в SQL*Plus, уже рассказывалось ранее в блоге в статье “Использование команды RESTRICT для отключения команд”.
- Параметр разметки (-M). За счет вызова SQL*Plus с параметром –M можно генерировать из своих сеансов SQL*Plus полные веб-страницы. О команде markup будет более подробно рассказываться чуть позже в моем блоге, в статье “Создание веб-страниц с помощью SQL*Plus”.