PL/SQL is Oracle's procedural extension to the SQL language. PL/SQL processes
tasks that are more complicated than simple queries and SQL Data manipulation
language statements. Without PL/SQL, Oracle would have to process SQL statements
one at a time. Each SQL statement results in another call to Oracle and
consequently higher performance overhead. In a networked environment, the overhead
can become significant. Every time a SQL statement
is issued, it must be sent over the network, creating more traffic. However,
with PL/SQL, an entire block of statements can be sent to Oracle at one time.
This can greatly reduce communication between an application and Oracle.
PL/SQL allows a number of constructs to be grouped into a single block and
executed as a unit. These include:
¸ One or more SQL statements
¸ Variable declarations
¸ Assignment statements
¸ Procedural control statements (IF...THEN...ELSE statements and loops)
¸ Exception handling
¸ PL/SQL blocks to call Oracle stored procedures and stored functions
¸ Combined procedural control statements and SQL statements to be executed as a
single unit
¸ Special PL/SQL features such as records, tables, cursor FOR loops, and
exception handling
¸ Statements to access and manipulate objects in an Oracle server
¸ Cursor variables
See the following:
¸Using ExecuteSQL and CreateSQL to Execute PL/SQL Blocks
¸Returning PL/SQL Tables
¸Returning PL/SQL Cursor Variables