From: | Sasmit Utkarsh <utkarshsasmit(at)gmail(dot)com> |
---|---|
To: | Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com> |
Cc: | pgsql-general(at)lists(dot)postgresql(dot)org |
Subject: | Re: Need some assistance on stored procedures execution using libpq in C |
Date: | 2024-04-25 16:46:22 |
Message-ID: | CAM-5MT2nHzHr5R=BND4O8zTLuxQR7rkz4fpS70f2E_MD-3xD-w@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
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 <pavel(dot)stehule(at)gmail(dot)com>
wrote:
> Hi
>
> čt 25. 4. 2024 v 12:57 odesílatel Sasmit Utkarsh <utkarshsasmit(at)gmail(dot)com>
> 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(at)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
>>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Pavel Stehule | 2024-04-25 16:49:25 | Re: Need some assistance on stored procedures execution using libpq in C |
Previous Message | Georg H. | 2024-04-25 15:08:22 | Re: best migration solution |