Thread: PREPARE in bash scripts
Dear all,
I've written a bash script that looks like the one below:
#!/bin/bash
DBuser='root'
DBname='test'
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