View Single Post

   
  #16 (permalink)  
Old 04-11-2008, 06:30 AM
Matt Miller
 
Posts: n/a
Default Re: 8.1 and syntax checking at create time

On Wed, 2005-08-31 at 15:29 -0400, Tom Lane wrote:
> Matt Miller <mattm@epx.com> writes:
> > I don't remember the last time I intended to write code that referenced
> > something that did not exist in the database.

>
> Almost every day, people try to write stuff like
>
> CREATE TEMP TABLE foo ... ;
> INSERT INTO foo ... ;
> etc etc
> DROP TABLE foo ;


Point taken.

PL/SQL requires all DDL to be dynamic SQL. For example:

execute immediate 'drop table foo';

The stuff inside the string is pretty-much ignored at compile time.

Maybe, then, my idealized PL/pgSQL compiler always allows DDL to
reference any object, but DML is checked against the catalog.


---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings

Reply With Quote