Andrew Dunstan wrote:
> Bruce Momjian said:
> > Let me jump in --- there is the issue of how to prevent the backend
> > from running the query through the lexer/parser. The cleanest idea
> > presented was:
> >
> > >CREATE FUNCTION bob() RETURNS INTEGER AS stdin LANGUAGE 'plpgsql';
> > >BEGIN
> > > ...
> > >END;
> > >\.
> >
> > The interesting thing I missed at first viewing was that there is a
> > semicolon after the first line. This allows the backend to go into a
> > COPY-like mode where the client can pass lines to the backend bypassing
> > the lexer/parser.
> >
>
> If it is all processed in the front end as Tom is suggesting, the backend
> wouldn't see anything different from what it does now.
>
> That said, I rather like this syntax.
I don't think we want to push this into each client unless there is no
other solution. Seems the libpq copy API could be utilized to handle
this cleanly.
-- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610)
359-1001+ If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square,
Pennsylvania19073