<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>