From: Michael Meskes <meskes@postgresql.org>
To: Dirk Jagdmann <doj@cubic.org>
Cc: pgsql-interfaces@postgresql.org
Subject: Re: ecpg and VARCHAR
Date: Tue, 23 Aug 2005 11:31:46 +0200
Message-ID: <20050823093146.GA8559@1> (raw)
In-Reply-To: <42D040E8.8060309@cubic.org>
References: <42D040E8.8060309@cubic.org>
On Sat, Jul 09, 2005 at 11:26:00PM +0200, Dirk Jagdmann wrote:
> I'd like to get some information on VARCHAR types with ecpg. If I
> declare a VARCHAR without any size information I get a compilation error
> from my gcc 3.4.4:
> ...
> Now I suppose this negative declaration should have initialized an empty
> array and the generated sql code then allocates the space as needed?
Well, actually no. You just found a way to declare a pointer to a
varchar that wasn't tested for. I will fix this test. Unfortunately it
only means that you will get an error message from ecpg. It simply is
not implemented yet. Should be easy to do but my spare time is rare at
the moment.
> If I declared the VARCHAR with a size everything works fine. However I'd
> like to know if the characters in the array contain a trailing 0 or if I
> have to set this explicitely?
No. With char it may, but with varchar it does not.
> And then I'd like to know which is the preferred way to retrieve "text"
> columns which contain arbitrary length texts with ecpg?
How about 'char *'? Just make sure the pointer is NULL and you free it
after use.
Michael
--
Michael Meskes
Email: Michael at Fam-Meskes dot De, Michael at Meskes dot (De|Com|Net|Org)
ICQ: 179140304, AIM/Yahoo: michaelmeskes, Jabber: meskes@jabber.org
Go SF 49ers! Go Rhein Fire! Use Debian GNU/Linux! Use PostgreSQL!
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: pgsql-interfaces@postgresql.org
Cc: meskes@postgresql.org, doj@cubic.org
Subject: Re: ecpg and VARCHAR
In-Reply-To: <20050823093146.GA8559@1>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox