ⓘ SQL Plus


ⓘ SQL Plus

SQL Plus understands five categories of text:

  • PL/SQL blocks
  • environment monitoring commands such as SHOW
  • SQL Plus internal commands, for example
  • environment control commands such as SET
  • SQL statements
  • Comments
  • External commands prefixed by the! char

Scripts can include all of these components.

An Oracle programmer in the appropriately configured software environment can launch SQL Plus, for example, by entering:

$ sqlplus scott/tiger

where the Oracle user scott has the password tiger. SQL Plus then presents a prompt with the default form of:


Interactive use can then start by entering a SQL statement terminated by a semicolon, a PL/SQL block, or another command. For example:


1. History

The first version of SQL Plus was called UFI "User Friendly Interface". UFI appeared in Oracle database releases up to Version 4.

After Oracle programmers had added new features to UFI, its name became Advanced UFI. The name "Advanced UFI" changed to "SQL Plus" with the release of the version 5 of Oracle.


2. Usage

Graphical interfaces from Oracle or third parties have diminished the proportion of Oracle database end-users who depend on the SQL Plus environment. Oracle shops typically continue to use SQL Plus scripts for batch updating or simple reports.

Oracle Corporations wrappers/gui-fications/replacements for SQL Plus include:

  • Oracle SQL Plus Worksheet, a component of OEM
  • iSQL Plus or iSQLPlus, a web-based utility
  • SQL Worksheet, a component of Oracle SQL Developer
  • SQL Workshop part of Oracle Application Express

2.1. Usage Oracle 11g

Starting from Oracle database 11g, iSqlplus web based and sqlplus GUI no longer ship with Oracle database software. The command-line SQL Plus interface continues in use, mostly for non-interactive scripting for administrative purposes. The Server Manager Command Line -a replacement of SQL*DBA- is obsolete and SQL Plus 8i and later allows the user to issue statements like STARTUP and SHUTDOWN when connected as SYSDBA. Server Manager 7.1 introduced the command CONNECT / AS SYSDBA to replace CONNECT INTERNAL. SQL Plus 8i and later allows the use of CONNECT / AS SYSDBA


3. Compatibility

Other vendors have made their software somewhat compatible with SQL Plus script commands or offer a SQL Plus mode of operation. Relevant products include TOAD from Quest Software.


4. Integration


SQL Plus-internal variables, accessible within an SQL Plus session, include:

  • user variables, displayable with the DEFINE command and referenceable with one or two cases of a prefixed character default prefixes: & and &&. Oracle Corporation calls these variables "substitution variables". Programmers can use them anywhere in a SQL or PL/SQL statement or in SQL Plus commands. They can be populated by a literal using DEFINE or from the database using the column command.
  • substitution variables, useful for interacting with user-input
  • predefined variables, prefixed with an underscore _
  • bind variables, prefixed by a colon, which can interact with the PL/SQL environment. Displayable with the VARIABLE and PRINT commands

Error trapping

The WHENEVER command specifies an action to perform in the event of the system detecting an SQL error or an operating-system error while running a subsequent SQL Plus command.


5. Supplementary software

  • rlwrap does GNU Readline like command completion for SQL Plus on UNIX and Linux.
  • SQL Assistant SQL Assistant add-on for SQL Plus Windows version extends SQL Plus with SQL automatic word completion, in-line Oracle SQL Reference, data export/import, code unit testing, data browsing, and code development functions.