Re: Pass parameters to SQL script

Поиск
Список
Период
Сортировка
От Daniel Martini
Тема Re: Pass parameters to SQL script
Дата
Msg-id 1092909601.41247a21119e8@webmail.uni-hohenheim.de
обсуждение исходный текст
Ответ на Pass parameters to SQL script  (Fuchs Clemens <clemens.fuchs@siemens.com>)
Список pgsql-general
Hi,

Citing Fuchs Clemens <clemens.fuchs@siemens.com>:
> is it possible to pass parameters to a SQL script, which I launch via the
> psql shell?

yes

> In Oracle it works like that:
>
>     sqlplus myscript.sql myschema
>
> and within the script I can use the parameter like this:
>
>     CONCAT .
>     CREATE TABLE &1..test (name VARCHAR2(100));
>
> Is there a counterpart for PostgreSQL?

call psql like this to set a variable named your_variable_name to my_table:

psql -v your_variable_name=my_table

to expand the variable your_variable_name to its value (my_table in this case)
in the sql script, precede its name with a colon, like so:

select * from :your_variable_name;

which will expand to:

select * from my_table;

the psql manpage has more info on all this.

Regards,
Daniel

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

Предыдущее
От: "Andrew Hall"
Дата:
Сообщение: Stored Procedures woes
Следующее
От: Oliver Elphick
Дата:
Сообщение: Re: pg_dump feature request: Exclude tables?