Обсуждение: Psql syntax run within java code

Поиск
Список
Период
Сортировка

Psql syntax run within java code

От
Pei-Chieh Shen
Дата:
Hi,

I have a problem with running a psql command from within my java application. I am pretty sure it is a syntax problem,
butthe same command run at the sql interface works. 

Here is my syntax:

                  strQueryForExportDump = "psql -d car -c 'select id from pegs1' ";
                        objProcess=objCurrentRuntime.exec(strCommand);
                        BufferedInputStream in = new BufferedInputStream(objProcess.getInputStream());
                        byte [] b = new byte[80];
                        in.read(b,0,30);
                        String cmdOut = new String(b);
                System.out.println("cmd out1 is " + cmdOut);

                        byte []er = new byte[580];
                        BufferedInputStream err = new BufferedInputStream(objProcess.getErrorStream());
                        err.read(er,0,580);
                        String cmdErr = new String(er);
                System.out.println("err stream is " + cmdErr);

This is the output I see from the log:

dump str is psql -d car -c 'select id from pegs1;'
cmd out1 is
err stream is psql: warning: extra command-line argument "from" ignored
psql: warning: extra command-line argument "pegs1;'" ignored
psql: FATAL:  user "id" does not exist

Please help.

Peggy


Re: Psql syntax run within java code

От
joseph speigle
Дата:
I don't know how old this message is, but looks like it needs a username to connect as?  Just try

psql -d car -U username -c 'select id from pegs1';

There was also a post yesterday about being able to put the pass in a .pgpass file, if it would fail for lack of a
password

>                   strQueryForExportDump = "psql -d car -c 'select id from pegs1' ";
> This is the output I see from the log:
>
> dump str is psql -d car -c 'select id from pegs1;'
> cmd out1 is
> err stream is psql: warning: extra command-line argument "from" ignored
> psql: warning: extra command-line argument "pegs1;'" ignored
> psql: FATAL:  user "id" does not exist
>
> Please help.
>
> Peggy
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 2: you can get off all lists at once with the unregister command
>     (send "unregister YourEmailAddressHere" to majordomo@postgresql.org)

--
joe speigle
www.sirfsup.com