Re: Problem with /usr/local/pgsql/bin/psql - Mailing list pgsql-admin

From Robin Iddon
Subject Re: Problem with /usr/local/pgsql/bin/psql
Date
Msg-id 444C9858.4050701@edesix.com
Whole thread Raw
In response to Problem with /usr/local/pgsql/bin/psql  (<dhanesh.prabha@wipro.com>)
List pgsql-admin
Your problem here is quoting.  You need to escape the quotes around the
SQL strings so that the shell (I assume you're using Unix of some
flavour) doesn't interpret them:

        /usr/local/pgsql/bin/psql -d temp -c 'insert into
temp.ip_mapping_tb(ip,location)  values(\'192.100.9.51\',\'FirstFloor\')'


However, if I were you I would consider running via a file anyway - if
you save your query into a file then you can use

psql -d temp -f foo.sql

instead.  Within the file you can type your query exactly like it should
be with no special escaping required.

Hope this helps,

Robin

dhanesh.prabha@wipro.com wrote:
> Hi ,
>
>
>     I am trying to insert data into the table via shell script using
> psql command.
>     But it giving syntax error. the same query is finely working pgAdmin
> III client.
>     The query and error given below.
>
>
>     Eg:
>
>
>         ERROR:  syntax error at or near ".9" at character 85
>         LINE 1: ...pping_tb(ip,location)  values(192.100.9.51,Firs...
>
>
>         Also when i am givinf Firstfloor as First Floor it was giving
> error
>
>
>         /usr/local/pgsql/bin/psql -d temp -c 'insert into
> temp.ip_mapping_tb(ip,location)  values('192.100.9.51','First Floor')'
>
>
>         psql: FATAL:  role "Floor)" does not exist
>
>


pgsql-admin by date:

Previous
From: Bruno Cortes
Date:
Subject: FATAL: catalog is missing attributes
Next
From: Alvaro Herrera
Date:
Subject: Re: Autovacuuming