Re: pl/pgsql create table

Поиск
Список
Период
Сортировка
От Christoph Dalitz
Тема Re: pl/pgsql create table
Дата
Msg-id 20020827192832.513f388d.christoph.dalitz@hs-niederrhein.de
обсуждение исходный текст
Ответ на pl/pgsql create table  (Masse Jacques <jacques.masse@bordeaux.cemagref.fr>)
Ответы Re: pl/pgsql create table  (Bruce Momjian <pgman@candle.pha.pa.us>)
Список pgsql-general
> Neil Conway wrote:
> > Bruce Momjian <pgman@candle.pha.pa.us> writes:
> > > When referencing created/dropped tables in pl/pgsql, use EXECUTE to
> > > prevent the table oid from being stored in function as precompiled.  It
> > > is mentioned in the current FAQ.  The solution is for us to
> > > automatically add EXECUTE somehow.
> >
> > IMHO, no -- the solution is to automatically invalidate compiled query
> > plans when a dependant relation is removed. Not exactly sure how to do
> > it, but I was thinking of tackling this for 7.4 (suggestions are
> > welcome, of course).
>
> Yes, but how do you handle cases where the table gets create/dropped
> inside the transaction.  It is clearly tricky.
>
If I remember right, Oracle does not allow DDL-Statements in PL/SQL
procedures. You have to use a special package (I have forgotten the name)
which prevents the DDL-Statement from being precompiled.

So maybe this is a simple workaround: forbid DDL-Statements without EXECUTE.

Just my 0.2 Euros,

Christoph Dalitz


В списке pgsql-general по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: pl/pgsql create table
Следующее
От: cm@coretec.at (Christian Mock)
Дата:
Сообщение: stupid Q regarding "UPDATE waiting"