Re: SPI_execute_with_args call - Mailing list pgsql-general

From Gavin Flower
Subject Re: SPI_execute_with_args call
Date
Msg-id 5183921F.30509@archidevsys.co.nz
Whole thread Raw
In response to SPI_execute_with_args call  (Yuriy Rusinov <yrusinov@gmail.com>)
Responses Re: SPI_execute_with_args call
List pgsql-general
On 03/05/13 21:19, Yuriy Rusinov wrote:
Hello, colleagues !

I have to write random number generator state into database table
Table structure is 
table rand_state
{
    id serial not null primary key,
    state_rand bytea
};

In C-function I do
size_t nr_ins = strlen ("insert into rand_state (state_rand) values ($1);");
char * r_sql = (char *) palloc (nr_ins + 1);
strncpy (r_sql, "insert into rand_state (state_rand) values ($1);", nr_ins);

Oid * oids = (Oid *)palloc (sizeof (Oid));
Datum * val = PointerGetDatum (randBuf);
*oids = BYTEAOID;
const char * nulls = "NULL";
int rins = SPI_execute_with_args (r_sql, 1, oids, val, nulls, false, 1);

randBuf is a void * pointer that contains random number generator state,
when I try to execute SPI_execute_with_args (r_sql, 1, oids, val, nulls, false, 1); I receive error 
The connection to the server was lost. Attempting reset: Failed.
Could you give some work examples for SPI_execute_with_args because I didn't find them in documentation. 

Thanks a lot.

--
Best regards,
Sincerely yours,
Yuriy Rusinov.
I can't answer your question.

However, I can say that PRIMARY KEY implies NOT NULL (also an UNIQUE index), so you don't need to explicitly add
NOT NULL when you are specifying PRIMARY KEY!


Cheers,
Gavin

pgsql-general by date:

Previous
From: Yuriy Rusinov
Date:
Subject: SPI_execute_with_args call
Next
From: Yuriy Rusinov
Date:
Subject: Re: SPI_execute_with_args call