Re: [GENERAL] SPI_execute_plan and vardata - Mailing list pgsql-general

From Tom Lane
Subject Re: [GENERAL] SPI_execute_plan and vardata
Date
Msg-id 15983.1498167173@sss.pgh.pa.us
Whole thread Raw
In response to [GENERAL] SPI_execute_plan and vardata  (Арсен Арутюнян <arutar@bk.ru>)
Responses [GENERAL] Re[2]: [GENERAL] SPI_execute_plan and vardata
List pgsql-general
=?UTF-8?B?0JDRgNGB0LXQvSDQkNGA0YPRgtGO0L3Rj9C9?= <arutar@bk.ru> writes:
> Datum Values[2];

> Values[0]-is integer type 
> but Values[1] is string type so 

> Values[0] = SET_4_BYTES(227);

This is really bad practice.  It might accidentally work, but the
right way to do it is more like

    Values[0] = Int32GetDatum(227);

or possibly Int64GetDatum if you're thinking of bigint rather than int4.

> please assist how can i convert som char* string to Datum

You're not being too clear about which "string type" you have in mind,
but if it's text, good practice would be

    Values[1] = CStringGetTextDatum(char-*-ptr);

            regards, tom lane


pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: [GENERAL] 10beta1 role
Next
From: Muhammad Hanif Abdul Hamid
Date:
Subject: [GENERAL] Suddenly - LOG: could not open file "postmaster.pid": No such fileor directory