public inbox for [email protected]
help / color / mirror / Atom feedFrom: Adrian Klaver <[email protected]>
To: Andy Hartman <[email protected]>
Cc: Francisco Olarte <[email protected]>
Cc: [email protected]
Subject: Re: load fom csv
Date: Mon, 16 Sep 2024 09:56:25 -0700
Message-ID: <[email protected]> (raw)
In-Reply-To: <CAEZv3cpWJeZcG4WLBZ-caaUdSvm8nKETubwhzDox6VkCW7J31g@mail.gmail.com>
References: <CAEZv3cqEZyUouS_0tCcUG1UOi6C0VcYLgoneq-Atf8i+ikge1A@mail.gmail.com>
<CA+bJJbzkpHw9n=_pb1vDukgty1_r6pjt1F9=MniVAYkiVjfdPA@mail.gmail.com>
<CAEZv3cqMLSQUKDXoHJjPrEydjFvnpwS408MJAGhNmZCm1Yf7rg@mail.gmail.com>
<[email protected]>
<CAEZv3cpWJeZcG4WLBZ-caaUdSvm8nKETubwhzDox6VkCW7J31g@mail.gmail.com>
On 9/16/24 09:46, Andy Hartman wrote:
>
> It Looks correct.
>
> $pgTable = "image_classification_master"
Connect to the database with psql and look at the table name. I'm
betting it is not image_classification_master. Instead some mixed or all
upper case version of the name.
I don't use PowerShell or Windows for that matter these days so I can't
be of much use on the script. I do suspect you will need to some
escaping to get the table name properly quoted in the script. To work
through this you need to try what I call the crawl/walk/run process. In
this case that is:
1) Crawl. Connect using psql and run the \copy in it with hard coded values.
2) Walk. Use psql with the -c argument and supply the command again with
hard coded values
3) Run. Then use PowerShell and do the variable substitution.
>
>
>
>
> On Mon, Sep 16, 2024 at 12:17 PM Adrian Klaver
> <[email protected] <mailto:[email protected]>> wrote:
>
> On 9/16/24 09:12, Andy Hartman wrote:
> > 2024-09-16 12:06:00.968 EDT [4968] ERROR: relation
> > "image_classification_master" does not exist
> > 2024-09-16 12:06:00.968 EDT [4968] STATEMENT: COPY
> > Image_Classification_Master FROM STDIN DELIMITER ',' CSV HEADER;
>
> I'm assuming this is from the Postgres log.
>
> Best guess is the table name in the database is mixed case and needs to
> be double quoted in the command to preserve the casing.
>
> See:
>
> https://www.postgresql.org/docs/current/sql-syntax-lexical.html#SQL-SYNTAX-IDENTIFIERS <https://www.postgresql.org/docs/current/sql-syntax-lexical.html#SQL-SYNTAX-IDENTIFIERS;
>
> for why.
>
> >
> > On Mon, Sep 16, 2024 at 11:52 AM Francisco Olarte
> > <[email protected] <mailto:[email protected]>
> <mailto:[email protected] <mailto:[email protected]>>> wrote:
> >
> >
> >
> > On Mon, 16 Sept 2024 at 17:36, Andy Hartman
> <[email protected] <mailto:[email protected]>
> > <mailto:[email protected]
> <mailto:[email protected]>>> wrote:
> >
> > I'm trying to run this piece of code from Powershell and
> it just
> > sits there and never comes back. There are only 131
> records in
> > the csv.
> > $connectionString =
> >
> "Host=$pgServer;Database=$pgDatabase;Username=$pgUser;Password=$pgPassword"
> > $copyCommand = "\COPY $pgTable FROM '$csvPath' DELIMITER
> ',' CSV
> > HEADER;"
> > psql -h $pgServer -d $pgDatabase -U $pgUser -c $copyCommand
> > how can I debug this?
> >
> >
> > I would start by adding -a and -e after "psql".
> >
> > IIRC Powershell is windows, and in windows shell do not pass
> command
> > words preparsed as in *ix to the executable, but a single command
> > line with the executable must parse. Given the amount of
> quoting, -a
> > and -e will let you see the commands are properly sent, and
> if it is
> > trying to read something what it is.
> >
> > I will also try to substitute the -c with a pipe. If it
> heals, it is
> > probably a quoting issue.
> >
> > Also, I just caught Ron's message, and psql might be waiting
> for a
> > password.
> >
> > Francisco Olarte.
> >
>
> --
> Adrian Klaver
> [email protected] <mailto:[email protected]>
>
--
Adrian Klaver
[email protected]
view thread (6+ messages) latest in thread
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: [email protected]
Cc: [email protected], [email protected], [email protected], [email protected]
Subject: Re: load fom csv
In-Reply-To: <[email protected]>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox