Received: from web221.mail.yahoo.com (web221.mail.yahoo.com [128.11.68.121]) by hub.org (8.9.3/8.9.3) with SMTP id BAA89938 for ; Wed, 29 Dec 1999 01:40:53 -0500 (EST) (envelope-from sflee_tw@yahoo.com) Message-ID: <19991229064052.14930.rocketmail@web221.mail.yahoo.com> Received: from [203.66.42.5] by web221.mail.yahoo.com; Tue, 28 Dec 1999 22:40:52 PST Date: Tue, 28 Dec 1999 22:40:52 -0800 (PST) From: "S.F. Lee" Subject: Re: [INTERFACES] manipulate array wiht ecpg To: Michael Meskes Cc: pgsql-interfaces@postgreSQL.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii I have solved the problem by mapping a character array into integer array: struct data { int id; char a[100]; } temp; After getting temp from exec sql select ....., I use strtol() to convert temp.a into a integer array, and it works! I now have another problem that is I can get the tuples by sqlca.sqlerrd[2], but how can I get the type of each field that has been selected? In libpq++ FieldType(n) can get the type of field, how about in ecpg? Thanks S.F.Lee --- Michael Meskes wrote: > On Mon, Dec 27, 1999 at 01:51:39AM -0800, S.F. Lee > wrote: > > I am using ecpg to manipulate the whole row in > a > > table,and I have a problem in array, can anybody > give > > me a hint or a small test program to process > array? > > Unfortunately this is a known bug in ecpg. It's > listed on the TODO list. > However, I have no idea so far how to fix it. The > only way you can insert an > array is by listing its members. That is you have to > create your insert > statement via sprintf for instance and use exec sql > execute immediate. > > Sorry. I will fix it as soon as I find a solution. > > The problem is that ecpg also allows inserting the > whole array as single > integers by only listing the array. > > Michael > -- > Michael Meskes | Go SF > 49ers! > Th.-Heuss-Str. 61, D-41812 Erkelenz | Go Rhein > Fire! > Tel.: (+49) 2431/72651 | Use Debian > GNU/Linux! > Email: Michael@Fam-Meskes.De | Use > PostgreSQL! > __________________________________________________ Do You Yahoo!? Talk to your friends online with Yahoo! Messenger. http://messenger.yahoo.com