Re: Setting up functions in psql. - Mailing list pgsql-general

From Tom Lane
Subject Re: Setting up functions in psql.
Date
Msg-id 9077.1171601565@sss.pgh.pa.us
Whole thread Raw
In response to Setting up functions in psql.  (Paul Lambert <paul.lambert@autoledgers.com.au>)
Responses Re: Setting up functions in psql.  (Paul Lambert <paul.lambert@autoledgers.com.au>)
List pgsql-general
Paul Lambert <paul.lambert@autoledgers.com.au> writes:
> What I am confused about is: Why does the creation of a function fail if
> a table it uses does not exist when the function itself is creating the
> table further up to where it references it?

Because the function isn't actually being *executed*, only
syntax-checked.

The syntax precheck isn't completely reliable, for this reason among
others, so you can turn it off via check_function_bodies = off.

However, I'm not sure but what the function would fail anyway at runtime
for the same reason.  I think in a SQL function, it all gets parsed
before any is executed.  (This could probably get fixed, if we thought
it was worth the trouble.)

> Secondly, and here's the obviously easy one that I'm having a mental
> blank trying to figure out... How would I execute a function (such as
> the above) from psql?

select "fnLoadAppraisals"();

            regards, tom lane

pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: requests / suggestions to help with backups
Next
From: Paul Lambert
Date:
Subject: Re: Setting up functions in psql.