From: | Osvaldo Kussama <osvaldo(dot)kussama(at)gmail(dot)com> |
---|---|
To: | "robert(at)redo2oo(dot)ch" <robert(at)redo2oo(dot)ch> |
Cc: | pgsql-general(at)lists(dot)postgresql(dot)org, robert rottermann <robert(at)redcor(dot)ch> |
Subject: | Re: dynamically generate path to output file |
Date: | 2022-03-26 12:48:08 |
Message-ID: | CADgbbqjOmphi4NYkcrSPNB-at6mB=77J+AB6czUhoOGYhRU7Kw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
2022-03-26 6:35 GMT-03:00, robert(at)redo2oo(dot)ch <robert(at)redo2oo(dot)ch>:
> Hi Friends
>
> I would like to generate the path of a CSV file to which I output a query.
>
> This is what I try:
>
> CREATEORREPLACEPROCEDUREexport_cvs(
> home_dir varchar
> )
> AS
> $BODY$
> DECLARE
> OUTFILE varchar;
> BEGIN
> OUTFILE = (home_dir || '/tmp/company.csv');
> copy(
> select'company_'||id as"External ID",
> nameas"Name",'True'as"Is a Company",
> email,
> phone ,
> company_registry
> fromres_company
> ) TOOUTFILE withCSV HEADER;
> END;
> $BODY$
> LANGUAGEplpgsql;
>
> this produces a syntax error:
>
> psql:export_contacts_short.sql:21: ERROR: syntax error at or near
> "OUTFILE"
> LINE 17: ) TO OUTFILE with CSV HEADER;
>
>
> It works fine when I replace "TO OUTFILE" with a hard coded string.
>
> Can anybody of you give me a hint how to do that?
>
> Thanks a lot.
>
> Robert
>
>
Look at EXECUTE statement:
43.5.4. Executing Dynamic Commands
https://www.postgresql.org/docs/current/plpgsql-statements.html#PLPGSQL-STATEMENTS-EXECUTING-DYN
Osvaldo
From | Date | Subject | |
---|---|---|---|
Next Message | Marco Lechner | 2022-03-27 10:54:54 | support for DIN SPEC 91379 encoding |
Previous Message | Shaozhong SHI | 2022-03-26 12:12:05 | In what situation, a line feature could not be visible in PgAdmin? |