On Sat, Jun 20, 2009 at 10:52 AM, Jasen Betts <jasen@xxxxxxxxxx> wrote:
On 2009-06-16, gvimrc <gvimrc@xxxxxxxxxxxxxx> wrote:For inspiration perhaps, not as a textbook.
> I'm fairly new to PostgreSQL and completely new to using pl/pgsql
> though I've used MySQL's procedural language a little.
> I heard pl/pgsql is similar to Oracle's pl/sql so would it be possible,
> given that pl/pgsql literature is a bit thin on the ground, to use books
> on pl/sql for developing pl/pgsql code?
differences from oracle:
http://www.postgresql.org/docs/8.3/interactive/plpgsql-porting.html
the postgresql manual chapter on pl-pgsql (and the preceeding chapters)
contain all that you really need.
pl-pgsql chapter:
http://www.postgresql.org/docs/8.3/interactive/plpgsql.html
full manual:
http://www.postgresql.org/docs/8.3/interactive/index.html
plpgsql is much like any other procedural language
only you can embed SQL queries very very easily
some hints you may find useful:
The syntax checker doesn't always give useful advice when it rejects
your code so develop a habit of step-wise testing.
if you say "IF" and forget to say "THEN" it will lead a confusing
error message.
"ELSIF" (and "ELSEIF") are different to "ELSE IF" in the number of
"END IF"s youll need to use later.
-- sql comments and
/* c-style
comments */ can both be used.
And a major one is, that it cannot detect semantic error's (like missing table, or wrong column name, or wrong _expression_ assignment) until you execute the function. This implies that if you have branches in code, say IF .. THEN .. ELSE .. END IF then you will not see errors from a branch until that branch of code is executed.
Best regards,
--
Lets call it Postgres
EnterpriseDB http://www.enterprisedb.com
gurjeet[.singh]@EnterpriseDB.com
singh.gurjeet@{ gmail | hotmail | indiatimes | yahoo }.com
Mail sent from my BlackLaptop device