PREPARE in bash scripts

From: "A(dot)j(dot) Langereis" <a(dot)j(dot)langereis(at)inter(dot)nl(dot)net>
To: "Postgres general mailing list" <pgsql-general(at)postgresql(dot)org>
Subject: PREPARE in bash scripts
Date: 2005-11-18 16:15:20
Message-ID: 00e801c5ec5b$45b78000$3e01a8c0@aarjan2
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Dear all,

I've written a bash script that looks like the one below:

#!/bin/bash

DBuser='root'
DBname='test'

psql -q --username=$DBuser --dbname=$DBname -c "prepare test_statement (integer) as insert into tbl_test (col_test) values (\\$1)";

tail -f /root/testfile | while read a;
do
psql -q --username=$DBuser --dbname=$DBname -c "execute test_statement ($a)";
done;

psql -q --username=$DBuser --dbname=$DBname -c "deallocate test_statement";

Note that this is very stripped version of the real script, but it gives the same errors:

ERROR: prepared statement "test_statement" does not exist

I persume that this is caused because of the individual statements, each using their own session. But is there a way to avoid this?
In reality the statement that is prepared is much more complex, and the files that are processed are rather big. I hoped to gain more performance by preparing the statement.

Your sincerely,

Aarjan Langereis

Ps. The bash script is ran on an Fedora Core 3 machine using PostgreSQL 8.1.0

Browse pgsql-general by date

  From Date Subject
Next Message Jaime Casanova 2005-11-18 16:25:40 Re: Why CALL/PERFORM not part of core SQL?
Previous Message Csaba Nagy 2005-11-18 16:00:06 Re: How to debug a locked backend ?