Unix Technical Forum

Regarding COPY command from Postgres 8.2.0

This is a discussion on Regarding COPY command from Postgres 8.2.0 within the Pgsql Performance forums, part of the PostgreSQL category; --> Hello, In Postgres 7.2.4, COPY command is working fine even if tables have 6 fields but we are copying ...


Go Back   Unix Technical Forum > Database Server Software > PostgreSQL > Pgsql Performance

FAQ Members List Calendar Search Today's Posts Mark Forums Read
  #1 (permalink)  
Old 04-19-2008, 11:33 AM
soni de
 
Posts: n/a
Default Regarding COPY command from Postgres 8.2.0

Hello,


In Postgres 7.2.4, COPY command is working fine even if tables have 6 fields
but we are copying only 5 fields from the file

But in Postgres 8.2.0, if table has 6 fields and we need to copy data for 5
fields only, then we need to specify the column names too in COPY command.

Is there any configurable option, so that without specifying column name in
COPY command we can copy records in table as happened in Postgres 7.2.4?



Please provide us some help regarding above query.



Thanks,

Soni

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #2 (permalink)  
Old 04-19-2008, 11:34 AM
Ansgar -59cobalt- Wiechers
 
Posts: n/a
Default Re: Regarding COPY command from Postgres 8.2.0

On 2007-09-14 soni de wrote:
> In Postgres 7.2.4, COPY command is working fine even if tables have 6
> fields but we are copying only 5 fields from the file
>
> But in Postgres 8.2.0, if table has 6 fields and we need to copy data
> for 5 fields only, then we need to specify the column names too in
> COPY command.
>
> Is there any configurable option, so that without specifying column
> name in COPY command we can copy records in table as happened in
> Postgres 7.2.4?


I don't know if it is possible, but even if it were I'd strongly
recommend against it, as you'd be relying on the order the columns were
created in. That's a rather bad idea IMHO. Why would you want to avoid
giving the names of the columns in the first place?

Regards
Ansgar Wiechers
--
"The Mac OS X kernel should never panic because, when it does, it
seriously inconveniences the user."
--http://developer.apple.com/technotes/tn2004/tn2118.html

---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
choose an index scan if your joining column's datatypes do not
match

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #3 (permalink)  
Old 04-19-2008, 11:34 AM
soni de
 
Posts: n/a
Default Re: Regarding COPY command from Postgres 8.2.0

We have upgraded postgres from 7.2.4 to 8.2.0.
We have program which executes COPY command and our new database is changed
having some extra columns in some tables.
Because of this, COPY commands are failing.
So, we wanted the option to COPY the data without specifying column names.

Thanks,
Sonal


On 9/14/07, Ansgar -59cobalt- Wiechers <lists@planetcobalt.net> wrote:
>
> On 2007-09-14 soni de wrote:
> > In Postgres 7.2.4, COPY command is working fine even if tables have 6
> > fields but we are copying only 5 fields from the file
> >
> > But in Postgres 8.2.0, if table has 6 fields and we need to copy data
> > for 5 fields only, then we need to specify the column names too in
> > COPY command.
> >
> > Is there any configurable option, so that without specifying column
> > name in COPY command we can copy records in table as happened in
> > Postgres 7.2.4?

>
> I don't know if it is possible, but even if it were I'd strongly
> recommend against it, as you'd be relying on the order the columns were
> created in. That's a rather bad idea IMHO. Why would you want to avoid
> giving the names of the columns in the first place?
>
> Regards
> Ansgar Wiechers
> --
> "The Mac OS X kernel should never panic because, when it does, it
> seriously inconveniences the user."
> --http://developer.apple.com/technotes/tn2004/tn2118.html
>
> ---------------------------(end of broadcast)---------------------------
> TIP 9: In versions below 8.0, the planner will ignore your desire to
> choose an index scan if your joining column's datatypes do not
> match
>


Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #4 (permalink)  
Old 04-19-2008, 11:34 AM
Evan Carroll
 
Posts: n/a
Default Re: Regarding COPY command from Postgres 8.2.0

On 9/17/07, soni de <soni.de@gmail.com> wrote:
> We have upgraded postgres from 7.2.4 to 8.2.0.


This is one of the joys of 8.x over 7.2.x think of it like a different
sql product rather than an "upgrade." Its foundations are different.
7.4.x is still supported, and would have been a smoother upgrade for
you with less deprecations removed. To insert such a feature dependent
on column order without it being implied in the spec would be surely
be something deprecated quite quickly.

> We have program which executes COPY command and our new database is changed
> having some extra columns in some tables.
> Because of this, COPY commands are failing.
> So, we wanted the option to COPY the data without specifying column names.
>


The only way I can see a request, that allows for such bad-practice,
being approved would be if you were to use the '*' operator elegantly;
and, even then it would require you to update your code, only slightly
to a lesser degree than writing the column names.

Evan Carroll

---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?

http://www.postgresql.org/docs/faq

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #5 (permalink)  
Old 04-19-2008, 11:34 AM
Scott Marlowe
 
Posts: n/a
Default Re: Regarding COPY command from Postgres 8.2.0

On 9/17/07, soni de <soni.de@gmail.com> wrote:
> We have upgraded postgres from 7.2.4 to 8.2.0.
> We have program which executes COPY command and our new database is changed
> having some extra columns in some tables.
> Because of this, COPY commands are failing.
> So, we wanted the option to COPY the data without specifying column names.


Can't you just edit the import to have the newer 8.2.x syntax of

COPY table (field1, field2, field3, field4) FROM stdin;

???

And please tell me you aren't running 8.2.0, but 8.2.4 or now that it
just came out, 8.2.5. Those minor point releases contain a lot of bug
fixes, and you're just asking for trouble by running a .0 release.

---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On
Forum Jump


All times are GMT. The time now is 05:46 AM.


Powered by vBulletin® Version 3.6.5
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
www.UnixAdminTalk.com