Talk:PL/SQL
StepSqlite was nominated for deletion. The discussion was closed on 14 June 2016 with a consensus to merge. Its contents were merged into PL/SQL. The original page is now a redirect to this page. For the contribution history and old versions of the redirected article, please see its history; for its talk page, see here. |
This is the talk page for discussing improvements to the PL/SQL article. This is not a forum for general discussion of the article's subject. |
Article policies
|
Find sources: Google (books · news · scholar · free images · WP refs) · FENS · JSTOR · TWL |
This article is rated C-class on Wikipedia's content assessment scale. It is of interest to the following WikiProjects: | |||||||||||||||||||||||||||
|
This article links to one or more target anchors that no longer exist.
Please help fix the broken anchors. You can remove this template after fixing the problems. | Reporting errors |
Tail recursion irrelevant here
editThe 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 (talk • contribs) 19:03, October 27, 2004
- Agreed. --Anonymous 2 —Preceding unsigned comment added by 165.187.10.2 (talk • contribs) 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
editIs it "Advance" or "Advanced" Data Type? --Ernst de Haan —Preceding unsigned comment added by Ernstdehaan (talk • contribs) 11:51, April 11, 2006
- Advanced. --Anonymous 2 —Preceding unsigned comment added by 165.187.10.2 (talk • contribs) 07:42, July 19, 2006
Ada connection
edit"Its syntax strongly resembles that of Ada"
Oracle Database PL/SQL Language Reference as of version 21c (2022) states: "PL/SQL is based on the programming language Ada."[1] (Doubtless there are other languages with similarities to Ada and PL/SQL.)
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 129.113.245.64 (talk • contribs) 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)
References
- ^ "Oracle Database PL/SQL Language Reference 21c". Retrieved 2022-01-01.
First Appearance in Database
editIm 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
editAt 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... :)
History - Features
editHow did the language evolve? e.g. when where packages introduced? —Preceding unsigned comment added by 84.73.201.209 (talk) 20:33, 13 May 2009 (UTC)
Exceptions as separate section?
editPragmas, 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');".
Cursors
editThis is a missing section. It shall address sys and ref cursors.--Michelle Ridomi (talk) 17:04, 5 February 2015 (UTC)
Is PL/1 the model for PL/SQL
editI don't know anything about PL/SQL and very little about SQL itself. However, I used to be a proficient PL/1 programmer, and I have no problem reading and mostly understanding the PL/SQL code samples. — Preceding unsigned comment added by 76.102.116.97 (talk) 16:27, 15 May 2018 (UTC)
StepSqlite
editI see there was a separate page for StepSqlite that was merged into this one. I was curious about it and went looking around but the product seems to be defunct; should the reference to it be removed so as to save others from a wild goose chase? — Preceding unsigned comment added by 107.195.167.115 (talk) 21:52, 12 October 2020 (UTC)