1.0 : Oracle 6
PL/SQL 1.0 had a debut as Procedural Option with Oracle6. PL/SQL was implemented within SQL*Forms 3.0.
1.1 : Oracle 6
PL/SQL 1.1 supported client-side subprograms to execute stored code transparently.
2.0 : Oracle 7
PL/SQL 2.0 with Oracle7 supported stored procedures, functions, packages, user-defined record types, PL/SQL tables and many package extensions, including DBMS_OUTPUT and DBMS_PIPE.
2.1 : Oracle 7.1
PL/SQL 2.1 supported user-defined subtypes, use of stored functions inside SQL statements and dynamic SQL with the DBMS_SQL package.
2.2 : Oracle 7.2
PL/SQL 2.2 implemented wrapper for PL/SQL programs to protect source code, supported cursor variables and made database-driven job scheduling available with DBMS_JOB package.
2.3 : Oracle 7.3
PL/SQL 2.3 supported remote dependency management, file I/O within PL/SQL.
8.0 : Oracle 8
PL/SQL 8.0 with Oracle8 supported LOBs, VARRAYs and Nested tables and Oracle Advanced Queuing functionality.
8.1 : Oracle 8i
PL/SQL 8.1 with Oracle8i introduced Native Dynamic SQL, NOCOPY parameter option, Profiler, Bulk Binds, Autonomous Transactions, and new database triggers such as startup, shutdown, logon and logoff.
9.0 : Oracle 9i
PL/SQL 9i supports Native compilation of PL/SQL, common SQL parser, integration of XML with SQL and PL/SQL with invocation of XMLType from PL/SQL, HTTP cookie support in PL/SQL, inheritance support in PL/SQL, PL/SQL CASE expressions, and globalized datatypes such as timestamp, interval, unichar, univarchar2 and uniclob.
|