<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Nicolas,</p>
<p>Maybe you don't want to use native scripting, but look on <a
moz-do-not-send="true"
href="https://kamailio.org/docs/tutorials/devel/kamailio-kemi-framework/kemi/">KEMI</a>?<br>
</p>
<pre class="moz-signature" cols="72">Regards,
Igor</pre>
<div class="moz-cite-prefix">Le 19.04.2022 à 18:25, Chaigneau,
Nicolas a écrit :<br>
</div>
<blockquote type="cite"
cite="mid:PR3PR02MB6491C6FECFC21C88D90F52B8E6F29@PR3PR02MB6491.eurprd02.prod.outlook.com">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="Generator" content="Microsoft Word 15 (filtered
medium)">
<style>@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}@font-face
{font-family:Consolas;
panose-1:2 11 6 9 2 2 4 3 2 4;}p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
mso-fareast-language:EN-US;}.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;}div.WordSection1
{page:WordSection1;}</style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
<div class="WordSection1">
<p class="MsoNormal">Hello,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Trying again, in case this got unnoticed
the first time.<o:p></o:p></p>
<p class="MsoNormal">I hope that by doing so I’m not breaching
the rules of the mailing list.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">If nobody answers, then I’ll conclude that
nobody knows about that, and shall not insist anymore. :)<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Regards,<o:p></o:p></p>
<p class="MsoNormal">Nicolas.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div style="border:none;border-top:solid #E1E1E1
1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span
style="mso-fareast-language:FR">De :</span></b><span
style="mso-fareast-language:FR"> sr-users
<a class="moz-txt-link-rfc2396E" href="mailto:sr-users-bounces@lists.kamailio.org"><sr-users-bounces@lists.kamailio.org></a>
<b>De la part de</b> Chaigneau, Nicolas<br>
<b>Envoyé :</b> vendredi 8 avril 2022 17:01<br>
<b>À :</b> <a class="moz-txt-link-abbreviated" href="mailto:sr-users@lists.kamailio.org">sr-users@lists.kamailio.org</a><br>
<b>Objet :</b> [SR-Users] PostgreSQL - module sqlops -
working with prepared statements ?<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><span style="mso-fareast-language:FR"><o:p> </o:p></span></p>
<p class="MsoNormal">Hello,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">I’m using sql_xquery from sqlops module to
execute requests on a PostgreSQL database.<o:p></o:p></p>
<p class="MsoNormal">This work fine.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Now, for performance reasons, I would like
to use prepared statements.<o:p></o:p></p>
<p class="MsoNormal">I’m wondering if this is possible using
sql_xquery. I’ve looked at the code and documentation, it
seems it is not supported.<o:p></o:p></p>
<p class="MsoNormal">Can you confirm ?<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">If not possible with sql_xquery, is it
possible with another existing function ?<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">In the code, I’ve searched for
« PQprepare » / « PQexecPrepared ».<o:p></o:p></p>
<p class="MsoNormal">These can be found only in
« modules/db_postgres/pg_cmd.c », in function « pg_cmd_exec »
which is exported from « modules/db_postgres/pg_mod.c » (see
below).<o:p></o:p></p>
<p class="MsoNormal">I have no idea how to use these though… :/<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Any ideas ?<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">/*<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">* Postgres
module interface<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">*/<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">static
cmd_export_t cmds[] = {<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">
{"db_ctx", (cmd_function)NULL, 0, 0, 0, 0},<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">
{"db_con", (cmd_function)pg_con, 0, 0, 0, 0},<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">
{"db_uri", (cmd_function)pg_uri, 0, 0, 0, 0},<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">
{"db_cmd", (cmd_function)pg_cmd, 0, 0, 0, 0},<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">
{"db_put", (cmd_function)pg_cmd_exec, 0, 0, 0, 0},<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">
{"db_del", (cmd_function)pg_cmd_exec, 0, 0, 0, 0},<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">
{"db_get", (cmd_function)pg_cmd_exec, 0, 0, 0, 0},<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">
{"db_upd", (cmd_function)pg_cmd_exec, 0, 0, 0, 0},<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">
{"db_sql", (cmd_function)pg_cmd_exec, 0, 0, 0, 0},<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">
{"db_res", (cmd_function)pg_res, 0, 0, 0, 0},<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">
{"db_fld", (cmd_function)pg_fld, 0, 0, 0, 0},<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">
{"db_first", (cmd_function)pg_cmd_first, 0, 0, 0, 0},<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">
{"db_next", (cmd_function)pg_cmd_next, 0, 0, 0, 0},<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">
{"db_setopt", (cmd_function)pg_setopt, 0, 0, 0, 0},<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">
{"db_getopt", (cmd_function)pg_getopt, 0, 0, 0, 0},<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">
{"db_bind_api", (cmd_function)db_postgres_bind_api, 0, 0, 0,
0},<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas"> {0, 0,
0, 0, 0, 0}<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:10.0pt;font-family:Consolas">};<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Regards,<o:p></o:p></p>
<p class="MsoNormal">Nicolas.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p style="font-size: 9px; ">This message contains information that
may be privileged or confidential and is the property of the
Capgemini Group. It is intended only for the person to whom it
is addressed. If you are not the intended recipient, you are not
authorized to read, print, retain, copy, disseminate,
distribute, or use this message or any part thereof. If you
receive this message in error, please notify the sender
immediately and delete all copies of this message.</p>
<br>
<fieldset class="moz-mime-attachment-header"></fieldset>
<pre class="moz-quote-pre" wrap="">__________________________________________________________
Kamailio - Users Mailing List - Non Commercial Discussions
* <a class="moz-txt-link-abbreviated" href="mailto:sr-users@lists.kamailio.org">sr-users@lists.kamailio.org</a>
Important: keep the mailing list in the recipients, do not reply only to the sender!
Edit mailing list options or unsubscribe:
* <a class="moz-txt-link-freetext" href="https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users">https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users</a>
</pre>
</blockquote>
</body>
</html>