From Wikipedia, the free encyclopedia
Jump to: navigation, search
WikiProject Computing / Software  
WikiProject icon This article is within the scope of WikiProject Computing, a collaborative effort to improve the coverage of computers, computing, and information technology on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
 ???  This article has not yet received a rating on the project's quality scale.
 ???  This article has not yet received a rating on the project's importance scale.
Taskforce icon
This article is supported by WikiProject Software.

Tail recursion irrelevant here[edit]

The brief discussion of tail recursion is probably off the point and confusing to readers in database art. SQL was created as a means of specifying relational operators: project, select, join, etc. Looping and recursion are not necessary to the relational algebra, hence i.m.h.o. the discussion should skip the un-programmatic aspects of SQL and dive directly into the programmatic features of PL/SQL. --Anonymous —Preceding unsigned comment added by Wernher (talkcontribs) 19:03, October 27, 2004

Agreed. --Anonymous 2 —Preceding unsigned comment added by (talkcontribs) 07:41, July 19, 2006
Agree that a discussion of recursion may be overkill for this article, but disagree as to the reason. The whole point of the language is to add procedural elements like conditionals (IF, CASE) and looping to what is otherwise a non-procedural language. It's trivial to use a PL/SQL collection datatype to implement a basic stack for recursion, if a recursive algorithm is desired. BWatkins (talk) 03:27, 4 October 2011 (UTC)

I agree as well. I've been using PL/SQL many years and never had to (or wanted to) know about "tail recursion". What about putting in a an expanded section on procedure Exception Handling? That would be really good info IMHO. Wam067 (talk) 03:04, 26 March 2008 (UTC)

Advance or Advanced Data Type[edit]

Is it "Advance" or "Advanced" Data Type? --Ernst de Haan —Preceding unsigned comment added by Ernstdehaan (talkcontribs) 11:51, April 11, 2006

Advanced. --Anonymous 2 —Preceding unsigned comment added by (talkcontribs) 07:42, July 19, 2006

Ada connection[edit]

"Its syntax strongly resembles that of Ada"

Actually its syntax superficially reminds you of Ada, but everything that made Ada an interesting language has been ripped out. It could just as easily have Pascal, C or even Basic syntax, for all the relevance it has to ADA.

Interestingly enough, PL/SQL is usually implemented by interpreting a byte code. The only native PL/SQL compiler works by first translating into C.

There's also an alternative language, ProC, which is a pre-processed C that allows similar embedding of SQL. —Preceding unsigned comment added by (talkcontribs) 19:48, April 17, 2007

ADDITION : Claiming that it was based on ADA made it an easier sell to the USA Department of Defence (DOD). (By GrandPoohBah 28-Oct-2007)

I can fully believe that it is based on Ada, as both Ada and PL/SQL strongly remind me of PL/1. Are there any sources on the PL/SQL <-> PL/1 connection?Mzk1 (talk) 06:54, 8 August 2011 (UTC)
I really, really believe that I heard many years ago that Oracle is using a variation of PL/1 and Oracle's connection to IBM's DB2 supports the idea that Oracle was influenced by IBM. Note that PL/1 existed for more than a decade before Ada was released. Sam Tomato (talk) 01:53, 13 November 2016 (UTC)
Also look at ALGOL. Apparently it is the origin of them all. Sam Tomato (talk) 02:11, 13 November 2016 (UTC)

First Appearance in Database[edit]

Im confused about the first appearance of PLSQL in the database. On many web sites PLSQL is listed as being introduced in Oracle Database v6. However procedures, functions, packages and triggers were first made available in Oracle v7, not v6 ! Can someone please clarify why PLSQL is often listed as appearing in v6 ? How could PLSQL be executed in v6 ? Did you have to use OCI or SQL*Plus or some other means ?

PLSQL was included in Oracle Forms v3 around the same time frame as database v6, however it had its own PLSQL engine and did not send the PLSQL code to the database to be execute (despite Oracle marketing and sales often implying that it did)

GrandPoohBah 00:52, 31 October 2007 (UTC)

PL/SQL v1 was available on the SQL*Plus command line as well as in various other Oracle tools in version 6. However it did not support stored packages/procedures/functions, just anonymous blocks. (It was also separately licensed as the Procedural Option.)

History - Time References[edit]

At present the History section uses only Oracle release numbers as a time references. I think it would be helpful to have calendar years cited as well, for those who do not measure time as against Oracle benchmarks... :)

Rbelzil (talk) 16:17, 29 September 2008 (UTC)

History - Features[edit]

How did the language evolve? e.g. when where packages introduced? —Preceding unsigned comment added by (talk) 20:33, 13 May 2009 (UTC)

Exceptions as separate section?[edit]

Pragmas, control flow, automatic rollbacks and probably other issues make exceptions relatively complex to handle elegantly. Maybe some real-life examples could be added to show how to use it. All in all, maybe it deserves a separate section?

l0b0 (talk) 13:58, 24 March 2009 (UTC)

The assignment of values to a DATE datatype directly from a string, as shown in this article, is considered bad practice and should be avoided. Programming this way caused the majority of my company's (small number of) Y2K problems.

Instead, the programmer should always use a TO_DATE function - such as "MY_DATE = TO_DATE ('DD-MON-YYYY', '31-DEC-2010');". (talk) 21:18, 16 May 2010 (UTC)


This is a missing section. It shall address sys and ref cursors.--Michelle Ridomi (talk) 17:04, 5 February 2015 (UTC)