On 6/19/24 13:54, Rich Shepard wrote:
> On Wed, 19 Jun 2024, Adrian Klaver wrote:
>
>> Looks to me you have a left over unresolved transaction in your psql
>> session. The easiest solution if that is the case is to exit the
>> session and start a new session to run the script.
>
> Adrian, et al.:
>
> That's what I've done. This time I commented out the BEGIN; line:
> bustrac=# \i insert-law-offices-addr.sql INSERT 0 66
>
> There are no errors in the file but when I tried running it as a
> transaction
> it failed.
>
> I have not before used transactions when inserting or updating tables; I'm
> surprised that starting the transaction from the psql command line chokes
> the attempt.
It shouldn't:
cat transaction_test.sql
BEGIN;
insert into transaction_test values(1, 'test'), (2, 'dog'), (3, 'cat');
test=# create table transaction_test(id integer, fld_1 varchar);
test=# \i transaction_test.sql
BEGIN
INSERT 0 3
test=*# commit ;
COMMIT
test=# select * from transaction_test ;
id | fld_1
----+-------
1 | test
2 | dog
3 | cat
(3 rows)
>
> Regards,
>
> Rich
>
>
>
--
Adrian Klaver
adrian.klaver@aklaver.com