From: | Christoph Haller <ch(at)rodos(dot)fzk(dot)de> |
---|---|
To: | pgsql-hackers(at)postgresql(dot)org |
Cc: | neilc(at)samurai(dot)com |
Subject: | Re: REPEATED INSERT INTO ... 2nd thread |
Date: | 2003-02-25 08:59:44 |
Message-ID: | 3E5B3080.E50BC565@rodos.fzk.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
>
> On Mon, 2003-02-24 at 07:22, Christoph Haller wrote:
> > I've noticed subsequent executions of the same insert command are
slow.
> > I've searched the list archives for this matter and found several
> > entries
> > related, including suggestions how to speed up.
> > The standard answer from the core team is, use COPY.
> > Sorry, but this is from an application point of view not really an
> > option
> > if you're dealing with program variables.
>
> What do you mean by "program variables"? If you're just referring to
> variables in the programming language the DB client is written in, I
see
> no reason why you couldn't use COPY to input those.
>
Interesting. Suppose you have a C application fragment like
for (CmdIndex = start_index; CmdIndex < nRows; CmdIndex++)
{
sprintf(CmdLine,
"INSERT INTO AArray_Values ( Primary_Key, List_Pointer,\
Parameter_Name, Parameter_Code,\
Dim_Pointer, File_Pointer, Source_Type )\
VALUES ( %d,%d,'%s',%d,%d,%d,'%s' );",
AArray_Values[CmdIndex].primary_key,
AArray_Values[CmdIndex].value_list_ptr,
AArray_Values[CmdIndex].parameter_name,
AArray_Values[CmdIndex].parameter_code,
AArray_Values[CmdIndex].dim_pointer,
AArray_Values[CmdIndex].file_pointer,
AArray_Values[CmdIndex].source_type);
/*
call PQexec() to process
*/
}
How would you replace this by COPY?
Hoping I'm not partially out of order but I cannot see how to achieve
that.
Thanks for your time.
Regards, Christoph
From | Date | Subject | |
---|---|---|---|
Next Message | Christoph Haller | 2003-02-25 09:28:04 | Re: I cant find it or I'm just lazy ? |
Previous Message | Christoph Haller | 2003-02-25 08:36:01 | Re: REPEATED INSERT INTO ... |