Skip site navigation (1) Skip section navigation (2)

Re: [GENERAL] Shared Objects (Dynamic loading)

From: "Jasbinder Bali" <jsbali(at)gmail(dot)com>
To: "Michael Fuhr" <mike(at)fuhr(dot)org>
Cc: pgsql-novice(at)postgresql(dot)org
Subject: Re: [GENERAL] Shared Objects (Dynamic loading)
Date: 2006-08-28 19:26:55
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-generalpgsql-novice
Do I include this Version 1 syntax in the .pgc file or C file that i get
after doing ECPG to the .pgc file?

On 8/24/06, Michael Fuhr <mike(at)fuhr(dot)org> wrote:
> On Thu, Aug 24, 2006 at 02:51:50AM -0400, Jasbinder Bali wrote:
> > Well, the server side code is in ECPG because thats the easiest choice i
> > could see.
> > I really don't know how difficult or beneficial would SPI be. Haven't
> heard
> > of SPI before.
> > I was under the impression that ECPG and libpg are the only two choices
> a
> > developer has in postgresql for database related activities.
> ECPG and libpq are client libraries.  Server-side functions can use
> those libraries to make connections to the same or a different
> database, but a function can use SPI to execute commands in the
> same backend in which it's running without having to make a separate
> client connection.  That's more efficient and the commands the
> function runs will be executed in the same transaction as the
> function itself, so if the calling transaction rolls back then
> statements the function executed will roll back.  If the function
> had executed statements over a separate connection, committed them,
> and closed the connection, then those statements wouldn't roll back
> even if the function's transaction rolled back.
> > I am using char in postgres function as an analogue for char* in C. Is
> this
> > correct?
> > The link that you gave says varchar* in C has varchar as its analogue in
> > postgresql.
> If the function accepts a text argument then see the copytext() and
> concat_text() examples that show how to work with such data.  Look
> at the examples that use the version-1 calling conventions, the
> ones that are declared like this:
> PG_FUNCTION_INFO_V1(copytext);
> Datum
> copytext(PG_FUNCTION_ARGS)
> {
> ...
> }
> --
> Michael Fuhr

In response to


pgsql-novice by date

Next:From: Bruno Wolff IIIDate: 2006-08-29 00:10:19
Subject: Re: Difference between char and varchar
Previous:From: Richmond DyesDate: 2006-08-28 19:04:26
Subject: Difference between char and varchar

pgsql-general by date

Next:From: Scott MarloweDate: 2006-08-28 19:31:15
Subject: Re: Precision of data types and functions
Previous:From: Naz GassiepDate: 2006-08-28 19:23:50
Subject: Atomicity?

Privacy Policy | About PostgreSQL
Copyright © 1996-2017 The PostgreSQL Global Development Group