public inbox for [email protected]  
help / color / mirror / Atom feed
From: Sasmit Utkarsh <[email protected]>
To: Pavel Stehule <[email protected]>
Cc: [email protected]
Subject: Re: Need some assistance on stored procedures execution using libpq in C
Date: Thu, 25 Apr 2024 22:16:22 +0530
Message-ID: <CAM-5MT2nHzHr5R=BND4O8zTLuxQR7rkz4fpS70f2E_MD-3xD-w@mail.gmail.com> (raw)
In-Reply-To: <CAFj8pRAJKfcgS7TmC=ou_WrrA+8VmpUi1FtO2u4SMSQhLC+rZA@mail.gmail.com>
References: <CAM-5MT2-Sr8CquG96KWfz05b1smh4giP8xisyiT1qxL5vqpgiQ@mail.gmail.com>
	<CAFj8pRAJKfcgS7TmC=ou_WrrA+8VmpUi1FtO2u4SMSQhLC+rZA@mail.gmail.com>

Hi Pavel,

Thanks for the info. But is it not possible to have some kind of handling
of an empty result set using libpq for the given procedure?


Regards,
Sasmit Utkarsh
+91-7674022625


On Thu, Apr 25, 2024 at 8:26 PM Pavel Stehule <[email protected]>
wrote:

> Hi
>
> čt 25. 4. 2024 v 12:57 odesílatel Sasmit Utkarsh <[email protected]>
> napsal:
>
>> Hi PostgreSQL Team,
>>
>> I'm trying to execute the stored procedure(details along with the program
>> in the attachment) to fetch the records from the table for the inputs given
>> in the code as well. I have already created the procedure in the db. But I
>> see some strange output when I try to fetch the details from the table
>> using *PQexecPrepared*, even though there are no records for the given
>> input. I see that this message nTuples(rows)=1 along with procedure
>> successful execution. How to better handle this?
>> when it returned probably an empty result set. Please advise
>>
>
> PQ interface is designed for client server communication
>
> you should to use SPI API
>
> https://www.postgresql.org/docs/current/spi.html
>
> Regards
>
> Pavel
>
>
>>
>> *Output:*
>>
>>
>>
>>
>>
>> *sasmit@sasmit-Virtual-Machine:~/test$ ./test_proceduresmain() Connection
>> to shadow_shc_data database SUCCESSFULmain() nFields(cols)=2
>> nTuples(rows)=1SELECT operation succeeded on Shadow DBmain() blk_size
>> returned is 7565871*
>>
>> *DB:*
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> *[nix-shell:/ext/shb/tpfasm/shares-c]$ psql shadow_shc_datapsql (14.9,
>> server 12.16 (Ubuntu 12.16-0ubuntu0.20.04.1))Type "help" for
>> help.shadow_shc_data=# select * from fs_data;shadow_shc_data=# CALL
>> SQL_select_data_procedure(-335509949,false , NULL, NULL); blksize |
>> fadata---------+--------         |(1 row)*
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> *shadow_shc_data-# \dfList of functions-[ RECORD 1
>> ]-------+-----------------------------------------------------------------------------------------------------------------Schema
>>              | publicName                | sql_insert_data_procedureResult
>> data type    |Argument data types | fa integer, ft integer, ord integer,
>> xaddr text, recid text, blk_size integer, indata bytea, INOUT outdata
>> byteaType                | proc-[ RECORD 2
>> ]-------+-----------------------------------------------------------------------------------------------------------------Schema
>>              | publicName                | sql_select_data_procedureResult
>> data type    |Argument data types | fa integer, hold boolean, INOUT blksize
>> integer, INOUT fadata byteaType                | proc-[ RECORD 3
>> ]-------+-----------------------------------------------------------------------------------------------------------------Schema
>>              | publicName                | sql_update_data_procedureResult
>> data type    |Argument data types | indata bytea, unhold boolean, fa
>> integerType                | proc*
>>
>> Regards,
>> Sasmit Utkarsh
>> +91-7674022625
>>
>


view thread (3+ messages)  latest in thread

reply

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: [email protected]
  Cc: [email protected], [email protected], [email protected]
  Subject: Re: Need some assistance on stored procedures execution using libpq in C
  In-Reply-To: <CAM-5MT2nHzHr5R=BND4O8zTLuxQR7rkz4fpS70f2E_MD-3xD-w@mail.gmail.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox