Re: Multiple inserts without COPY
От | Mark Lubratt |
---|---|
Тема | Re: Multiple inserts without COPY |
Дата | |
Msg-id | 9319A042-6D9A-11D8-B976-000A9579AF50@indeq.com обсуждение исходный текст |
Ответ на | Re: Multiple inserts without COPY (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: Multiple inserts without COPY
|
Список | pgsql-admin |
On Mar 3, 2004, at 10:22 PM, Tom Lane wrote: > Mark Lubratt <mark.lubratt@indeq.com> writes: >> The deletes look something like >> delete from CL where CL_id = i >> where i could be a list of several hundred integers. Again, right now >> I iterate through the list. > > Consider > delete from CL where CL_id in (i,j,k,...); > If you have hundreds of target values, it might be better to put them > in > a temp table and go > delete from CL where CL_id in (select id from temp_table); > The latter should be reasonably quick in 7.4, but be warned that it'll > suck in prior releases. > Yeah, that's what I was looking for! I thought I might be able to do that. Cool. >> I was hoping I might be able to use COPY, but I see that's >> really only for psql. > > Huh? You can use COPY FROM STDIN in most of our client libraries, > certainly so with libpq. What are you using? > Actually, I'm using REALbasic. All the communication is happening through a TCP connection. I tried emulating what the command might look like in pgAdmin. But, of course, after the semi-colon, the parser got confused when it hit the actual data. I tried: COPY MyTable (id, val) FROM STDIN; 2 Hello There! \. It choked at the 2. I was just trying to see if the backend suspended parsing and would just start copying like psql does. But, I guess not. How does psql shovel a COPY at the backend? Oooh. I just remembered. There is a new method in the REALbasic classes that provide the PostgreSQL functionality. I'll have to check it out... I was hoping that there might be a syntax trick with INs or something like the delete command above. Something that might expand in the parser to do what I want to do. Thanks! Mark
В списке pgsql-admin по дате отправления: