Re: Finding error in long input file

From: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>
To: Rich Shepard <rshepard(at)appl-ecosys(dot)com>, pgsql-general(at)postgresql(dot)org
Subject: Re: Finding error in long input file
Date: 2024-07-09 22:29:41
Message-ID: 71cf3e97-a0a5-4a94-add8-989cd1e2311d@aklaver.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 7/9/24 15:14, Rich Shepard wrote:
> I've a file with 488 rows to be input into a table. I run the script using
> psql with the `\i' option.
>
> After psql found a few missing commas I thought the script was clean. But,
> psql returned this error:
> bustrac=# \i scripts/insert-addrs.sql
> psql:scripts/insert-addrs.sql:488: ERROR:  syntax error at or near ";"
> LINE 488: ...2832,1,default,'85250 Red House Rd','Paisley','OR','97636');
>
> ^ Am
> I correct that some rows were inserted into the table before this error was
> generated somewhere prior to the end of the file? If so, how do I determine
> which rows were inserted and what is the recommended procedure to locate
> just where that error is?
>
> I've learned from experience that using the old coding approach of dividing
> the file in half, then half again and again until the row with the error is
> found produces multiple rows with different PKs. Not what I want to clean
> up.
>
> A clue stick will be much appreciated.

bustrac=#\e scripts/insert-addrs.sql 488

If that raises this error:

environment variable PSQL_EDITOR_LINENUMBER_ARG must be set to specify a
line number

then:

bustrac=#\e scripts/insert-addrs.sql

If the editor is vi then:

:488

>
> TIA,
>
> Rich
>
>
>

--
Adrian Klaver
adrian(dot)klaver(at)aklaver(dot)com

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Rich Shepard 2024-07-09 22:33:03 Re: Finding error in long input file
Previous Message Ray O'Donnell 2024-07-09 22:26:33 Re: Finding error in long input file