|SQL*Plus User's Guide and Reference
Part Number A90842-01
This chapter introduces you to SQL*Plus, covering the following topics:
SQL*Plus is an interactive and batch query tool that is installed with every Oracle Server or Client installation. It has a command-line user interface, and more recently, a web-based user interface called iSQL*Plus.
On Windows platforms, context menu options accessed through the right mouse button enable local files to be sent to the iSQL*Plus user interface.
SQL*Plus has its own commands and environment, and it provides access to the Oracle RDBMS. It allows you to enter and execute SQL, PL/SQL, SQL*Plus and operating system commands to perform the following:
You can use SQL*Plus to generate reports interactively, to generate reports as batch processes, and to output the results to text file, to screen, or to HTML file for browsing on the Internet. You can generate reports dynamically using the HTML output facility of SQL*Plus in combination with server side CGI scripts, or using the dynamic reporting capability of iSQL*Plus to run a script from a web page.
For example, to describe a database object using iSQL*Plus, enter
which produces the following output:
To select the associated data from the database, enter
COLUMN FIRST_NAME HEADING "First Name" COLUMN LAST_NAME HEADING "Family Name" SELECT FIRST_NAME, LAST_NAME FROM EMP_DETAILS_VIEW WHERE LAST_NAME LIKE 'K%'
which produces the following output with renamed column headings.
SQL*Plus uses a two-tier model comprising:
The two tiers may or may not be on the same machine.
The command-line user interface is the character based terminal implementation.
Oracle Net components provide communication between the SQL*Plus Client and Oracle9i.
iSQL*Plus is a fast, browser-based interface which uses the SQL*Plus processing engine in a three-tier model comprising:
The iSQL*Plus Server must be on the same machine as the Oracle HTTP Server. The client tier may or may not also be on this machine. The middle tier coordinates interactions and resources between the client tier and the database tier. The database tier is Oracle9i, which is accessed via Oracle Net.
The iSQL*Plus user interface runs in a web browser connected to the Internet or your intranet. There is no installation or configuration required for the iSQL*Plus user interface. You only need to know the URL of the Oracle HTTP Server to access Oracle9i.
The iSQL*Plus Server is installed with the Oracle HTTP Server when Oracle9i is installed.
The middle tier contains the Oracle HTTP Server and the iSQL*Plus Server. The iSQL*Plus Server enables communication and authentication between the iSQL*Plus user interface and Oracle9i. Each iSQL*Plus session is uniquely identified, so you can have multiple concurrent sessions open to Oracle9i.
Oracle Net components provide communication between the iSQL*Plus Server and Oracle9i in the same way as for a client server installation of Oracle9i.
SQL*Plus is a component of the Oracle Database distribution. SQL*Plus, and its web-based user interface called iSQL*Plus, are installed by default when you install the Oracle Database.
A few aspects of Oracle and SQL*Plus differ from one host computer and operating system to another. These topics are discussed in the Oracle installation and user's guide, published in a separate version for each operating system that SQL*Plus supports.
Keep a copy of your Oracle installation and user's guide available for reference.
The SQL*Plus, SQL, and PL/SQL command languages are powerful enough to serve the needs of users with some database experience, yet straightforward enough for new users who are just learning to work with Oracle.
The design of the SQL*Plus command language makes it easy to use. For example, to give a column labelled LAST_NAME in the database the clearer heading "Family Name", you might enter the following command:
Similarly, to list the column definitions for a table called EMPLOYEES, you might enter this command:
There are several sources available to assist you to learn SQL*Plus:
Command-line and iSQL*Plus online help
Part II of this Guide, Chapters 5 through 12.
A course run by Oracle with the course code of SQLA. A three day hands on course.
This guide gives you information about SQL*Plus that applies to all operating systems. Some aspects of SQL*Plus, however, differ on each operating system. Such operating system specific details are covered in the Oracle installation and user's guide provided for your system. Use these operating system specific guides in conjunction with this SQL*Plus User's Guide and Reference.
Throughout this guide, examples showing how to enter commands use a common command syntax and a common set of sample tables. The tables are described in "Oracle9i Sample Tables and SQL*Plus".
You will find the "Conventions in Code Examples" particularly useful when referring to commands in this guide.
Included with Oracle9i, are a number of sample schemas. The tutorial and examples in this guide use the EMP_DETAILS_VIEW view of the Human Resources (HR) sample schema. In using the HR sample schema you will come to understand the concepts and operations of this guide. This schema contains personnel records for a fictitious company. As you complete the exercises in this guide, imagine that you are the personnel director for this company.
Dates in the sample tables use four digit years. As the default date format in SQL*Plus is DD-MM-YY, dates displayed show only a two digit year. Use the SQL TO_CHAR function in your SELECT statements to control the way dates are displayed.
Name Null? Type ----------------------------------------- -------- ---------------------------- EMPLOYEE_ID NOT NULL NUMBER(6) JOB_ID NOT NULL VARCHAR2(10) MANAGER_ID NUMBER(6) DEPARTMENT_ID NUMBER(4) LOCATION_ID NUMBER(4) COUNTRY_ID CHAR(2) FIRST_NAME VARCHAR2(20) LAST_NAME NOT NULL VARCHAR2(25) SALARY NUMBER(8,2) COMMISSION_PCT NUMBER(2,2) DEPARTMENT_NAME NOT NULL VARCHAR2(30) JOB_TITLE NOT NULL VARCHAR2(35) CITY NOT NULL VARCHAR2(30) STATE_PROVINCE VARCHAR2(25) COUNTRY_NAME VARCHAR2(40) REGION_NAME VARCHAR2(25)
The Human Resources (HR) Sample Schema is installed as part of the default Oracle9i installation. The HR user is locked by default.
You need to unlock the HR tables and user before you can use the HR sample schema. To unlock the HR tables and user, log in as the SYSTEM user and enter the following command:
For further information about unlocking the HR tables and login, see the Oracle9i Sample Schemas guide. The HR user is primarily to enable you to access the HR sample schema and is necessary to enable you to run the examples in this guide.
Each table in the database is "owned" by a particular user. You may wish to have your own copies of the sample tables to use as you try the examples in this guide. To get your own copies of the HR tables, see your DBA or see the Oracle9i Sample Schemas guide, or you can create the HR tables with the script HR_MAIN.SQL which is located in the following subdirectory on UNIX:
And on the following subdirectory on Windows:
To create the HR tables from command-line SQL*Plus, do the following:
On Windows, enter the following command at the SQL*Plus prompt:
To remove the sample tables, perform the same steps but substitute HR_DROP.SQL for HR_MAIN.SQL.
For more information about the sample schemas, see the Oracle9i Sample Schemas guide.