Re: stored procs in postgresql

Поиск
Список
Период
Сортировка
От Cere Davis
Тема Re: stored procs in postgresql
Дата
Msg-id c666e3db05092421106c6bab2b@mail.gmail.com
обсуждение исходный текст
Ответ на Re: stored procs in postgresql  (Chris Browne <cbbrowne@acm.org>)
Ответы Re: stored procs in postgresql  ("A. Kretschmer" <akretschmer@despammed.com>)
Список pgsql-sql
thanks,

I didn't even know about the string concatination function for this.
Unfortunately, it was of no help.  Specificly I am trying this, with
the following error:

SQL error:


ERROR:  syntax error at or near "' || $2 || '" at character 110

In statement:


CREATE FUNCTION "getcensusbound" (geometry, character) RETURNS
character AS 'SELECT bound_table.name  FROM '' || $2 || '' bound_table WHERE bound_table.the_geom::bytea !=
''null''::byteaAND 
contains(geometryn(bound_table.the_geom, 1), $1) = true;' LANGUAGE
"sql"
RETURNS NULL ON NULL INPUT


-Cere


On 9/24/05, Chris Browne <cbbrowne@acm.org> wrote:
> ceremona@gmail.com writes:
> > I have been having some trouble with plsql stored procs in postgres in
> > that I can
> > make a table name a variable in the stored proc.  Is there some
> > special  way to make this happen that I am unaware of?
> >
> > For example, I want to do something like:
> >
> > stored_proc(integer,varchar)
> >
> > SELECT table_name.id
> >     FROM table_name $2
> >    WHERE table_name.id=$1
> >
> > but I get an error about the $2 argument being no good.
> >
> > Does anyone know how I can deal with this?
>
> To do this sort of thing, you need to build up the query as a string,
> and EXECUTE it.
>
> Thus...
>    query := 'select t.id from ' || $2 || ' t where t.id = ' || $1 || ';';
>
> The other vital problem is that the select is in bad form.  The actual
> name of the table needs to come BEFORE the alias, not after.
>
> The following would represent more nearly legitimate SQL...
>
>   SELECT table_name.id
>       FROM $2 table_name
>      WHERE table_name.id=$1
> --
> let name="cbbrowne" and tld="cbbrowne.com" in String.concat "@" [name;tld];;
> http://cbbrowne.com/info/spiritual.html
> And me, with this terrible pain in all the diodes down my left side...
> -- Marvin the Paranoid Android
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: if posting/reading through Usenet, please send an appropriate
>        subscribe-nomail command to majordomo@postgresql.org so that your
>        message can get through to the mailing list cleanly
>


--
Cere Davis
ceremona@gmail.com
-------------------
GPG Key:  http://staff.washington.edu/cere/pubkey.asc
GPG fingerprint (ID# 73FCA9E6) : F5C7 627B ECBE C735 117B  2278 9A95
4C88 73FC A9E6


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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: redundancy in CHECK CONSTRAINTs
Следующее
От: Ferindo Middleton Jr
Дата:
Сообщение: Re: redundancy in CHECK CONSTRAINTs