<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/ref.cubrid.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'es',
  ),
  'this' => 
  array (
    0 => 'function.cubrid-execute.php',
    1 => 'cubrid_execute',
    2 => 'Ejecutar una sentencia SQL preparada',
  ),
  'up' => 
  array (
    0 => 'ref.cubrid.php',
    1 => 'Funciones de CUBRID',
  ),
  'prev' => 
  array (
    0 => 'function.cubrid-error-msg.php',
    1 => 'cubrid_error_msg',
  ),
  'next' => 
  array (
    0 => 'function.cubrid-fetch.php',
    1 => 'cubrid_fetch',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'es',
    'path' => 'reference/cubrid/functions/cubrid-execute.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="function.cubrid-execute" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">cubrid_execute</h1>
  <p class="verinfo">(PECL CUBRID &gt;= 8.3.0)</p><p class="refpurpose"><span class="refname">cubrid_execute</span> &mdash; <span class="dc-title">Ejecutar una sentencia SQL preparada</span></p>

 </div>

 <div class="refsect1 description" id="refsect1-function.cubrid-execute-description">
  <h3 class="title">Descripción</h3>
  <div class="methodsynopsis dc-description">
   <span class="methodname"><strong>cubrid_execute</strong></span>(<span class="methodparam"><span class="type"><a href="language.types.resource.php" class="type resource">resource</a></span> <code class="parameter">$conn_identifier</code></span>, <span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$sql</code></span>, <span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$option</code><span class="initializer"> = 0</span></span>): <span class="type"><a href="language.types.resource.php" class="type resource">resource</a></span></div>

  <div class="methodsynopsis dc-description"><span class="methodname"><strong>cubrid_execute</strong></span>(<span class="methodparam"><span class="type"><a href="language.types.resource.php" class="type resource">resource</a></span> <code class="parameter">$request_identifier</code></span>, <span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$option</code><span class="initializer"> = 0</span></span>): <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></div>

  <p class="simpara">
   La función <span class="function"><strong>cubrid_execute()</strong></span> se usa para ejecutar la
   sentencia SQL dada. Ejecuta la consulta usando
   <code class="parameter">conn_identifier</code> y SQL, y luego devuelve el
   gestor de solicitud creado. Se usa para la simple ejecución de la consulta,
   donde el parámetro de enlace no es necesario. Además, la
   función <span class="function"><strong>cubrid_execute()</strong></span> se usa para ejecutar la
   sentencia preparada por medio de <span class="function"><a href="function.cubrid-prepare.php" class="function">cubrid_prepare()</a></span> y
   <span class="function"><a href="function.cubrid-bind.php" class="function">cubrid_bind()</a></span>. En este momento se necesitan especificar
   los argumentos <code class="parameter">request_identifier</code> y
   <code class="parameter">option</code>.
  </p>
  <p class="simpara">
   El argumento <code class="parameter">option</code> se usa para determinar si recibir el OID
   después de la ejecución de la consulta y si ejecutar la consulta en modo síncrono
   o asíncrono. Se pueden especificar <strong><code>CUBRID_INCLUDE_OID</code></strong> y <strong><code>CUBRID_ASYNC</code></strong> (o
   <strong><code>CUBRID_EXEC_QUERY_ALL</code></strong> si se desea ejecutar múltiples sentencias SQL) usando
   un operador OR a nivel de bit. Si no se especifica, ninguna de
   ellas será seleccionada. Si la bandera <strong><code>CUBRID_EXEC_QUERY_ALL</code></strong> está activa, el modo
   síncrono (sync_mode) se usa para devolver los resultados de la consulta, y en esos casos las
   siguientes reglas serán aplicadas:
  </p>
  <ul class="simplelist">
   <li>El valor devuelto es el resultado de la primera petición.</li>
   <li>
    Si sucede un error en la consulta, la ejecución se procesa como un
    fallo.
   </li>
   <li>
    En una consulta compuesta por c1, c2, c3, si sucede
    un error en c2 después del éxito de la ejecución de c1, el resultado de c1 permanece
    válido. Esto es, los éxitos previos en las ejecucuiones de consultas no se repiten
    cuando sucede un error.
   </li>
   <li>
    Si una consulta se ejecuta de forma satisfactoria, el resultado de la segunda consulta puede
    obtenerse usando la función <span class="function"><a href="function.cubrid-next-result.php" class="function">cubrid_next_result()</a></span>.
   </li>
  </ul>
  <p class="simpara">
   Si el primer argumento es <code class="parameter">request_identifier</code> para
   ejecutar la función <span class="function"><a href="function.cubrid-prepare.php" class="function">cubrid_prepare()</a></span>, se puede especificar
   una opción, solamente <strong><code>CUBRID_ASYNC</code></strong>.
  </p>
 </div>


 <div class="refsect1 parameters" id="refsect1-function.cubrid-execute-parameters">
  <h3 class="title">Parámetros</h3>
  <dl>
   
    <dt><code class="parameter">conn_identifier</code></dt>
    <dd><span class="simpara">Identificador de conexión.</span></dd>
   
   
    <dt><code class="parameter">sql</code></dt>
    <dd><span class="simpara">SQL a ser ejecutado.</span></dd>
   
   
    <dt><code class="parameter">option</code></dt>
    <dd><span class="simpara">La opción de ejecución de la consulta CUBRID_INCLUDE_OID, CUBRID_ASYNC, CUBRID_EXEC_QUERY_ALL.</span></dd>
   
   
    <dt><code class="parameter">request_identifier</code></dt>
    <dd><span class="simpara">Identificador de <span class="function"><a href="function.cubrid-prepare.php" class="function">cubrid_prepare()</a></span>.</span></dd>
   
  </dl>
 </div>


 <div class="refsect1 returnvalues" id="refsect1-function.cubrid-execute-returnvalues">
  <h3 class="title">Valores devueltos</h3>
  <p class="simpara">
   Gestor de solicitud, cuando el proceso tiene éxito y el primer parámetro es
   conn_identifier; <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong>, cuando el proceso tiene éxito y el primer argumento es
   request_identifier, o <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong> si ocurre un error.
  </p>
 </div>


 <div class="refsect1 changelog" id="refsect1-function.cubrid-execute-changelog">
  <h3 class="title">Historial de cambios</h3>
  <table class="doctable informaltable">
   
    <thead>
     <tr>
      <th>Versión</th>
      <th>Descripción</th>
     </tr>

    </thead>

    <tbody class="tbody">
     <tr>
      <td>8.4.0</td>
      <td>
       Añade <strong><code>CUBRID_EXEC_QUERY_ALL</code></strong> como opción nueva.
      </td>
     </tr>

    </tbody>
   
  </table>

 </div>

 <div class="refsect1 examples" id="refsect1-function.cubrid-execute-examples">
  <h3 class="title">Ejemplos</h3>
  <div class="example" id="example-1">
   <p><strong>Ejemplo #1 Ejemplo de <span class="function"><strong>cubrid_execute()</strong></span></strong></p>
   <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />$conn </span><span style="color: #007700">= </span><span style="color: #0000BB">cubrid_connect</span><span style="color: #007700">(</span><span style="color: #DD0000">"localhost"</span><span style="color: #007700">, </span><span style="color: #0000BB">33000</span><span style="color: #007700">, </span><span style="color: #DD0000">"demodb"</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">$result </span><span style="color: #007700">= </span><span style="color: #0000BB">cubrid_execute</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn</span><span style="color: #007700">, </span><span style="color: #DD0000">"SELECT code FROM event WHERE name='100m Butterfly' and gender='M'"</span><span style="color: #007700">, </span><span style="color: #0000BB">CUBRID_ASYNC</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$row </span><span style="color: #007700">= </span><span style="color: #0000BB">cubrid_fetch_array</span><span style="color: #007700">(</span><span style="color: #0000BB">$result</span><span style="color: #007700">, </span><span style="color: #0000BB">CUBRID_ASSOC</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$event_code </span><span style="color: #007700">= </span><span style="color: #0000BB">$row</span><span style="color: #007700">[</span><span style="color: #DD0000">"code"</span><span style="color: #007700">];<br /><br /></span><span style="color: #0000BB">cubrid_close_request</span><span style="color: #007700">(</span><span style="color: #0000BB">$result</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">$history_req </span><span style="color: #007700">= </span><span style="color: #0000BB">cubrid_prepare</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn</span><span style="color: #007700">, </span><span style="color: #DD0000">"SELECT * FROM history WHERE event_code=?"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">cubrid_bind</span><span style="color: #007700">(</span><span style="color: #0000BB">$history_req</span><span style="color: #007700">, </span><span style="color: #0000BB">1</span><span style="color: #007700">, </span><span style="color: #0000BB">$event_code</span><span style="color: #007700">, </span><span style="color: #DD0000">"number"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">cubrid_execute</span><span style="color: #007700">(</span><span style="color: #0000BB">$history_req</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">printf</span><span style="color: #007700">(</span><span style="color: #DD0000">"%-20s %-9s %-10s %-5s\n"</span><span style="color: #007700">, </span><span style="color: #DD0000">"athlete"</span><span style="color: #007700">, </span><span style="color: #DD0000">"host_year"</span><span style="color: #007700">, </span><span style="color: #DD0000">"score"</span><span style="color: #007700">, </span><span style="color: #DD0000">"unit"</span><span style="color: #007700">);<br />while (</span><span style="color: #0000BB">$row </span><span style="color: #007700">= </span><span style="color: #0000BB">cubrid_fetch_array</span><span style="color: #007700">(</span><span style="color: #0000BB">$history_req</span><span style="color: #007700">, </span><span style="color: #0000BB">CUBRID_ASSOC</span><span style="color: #007700">)) {<br />    </span><span style="color: #0000BB">printf</span><span style="color: #007700">(</span><span style="color: #DD0000">"%-20s %-9s %-10s %-5s\n"</span><span style="color: #007700">,<br />        </span><span style="color: #0000BB">$row</span><span style="color: #007700">[</span><span style="color: #DD0000">"athlete"</span><span style="color: #007700">], </span><span style="color: #0000BB">$row</span><span style="color: #007700">[</span><span style="color: #DD0000">"host_year"</span><span style="color: #007700">], </span><span style="color: #0000BB">$row</span><span style="color: #007700">[</span><span style="color: #DD0000">"score"</span><span style="color: #007700">], </span><span style="color: #0000BB">$row</span><span style="color: #007700">[</span><span style="color: #DD0000">"unit"</span><span style="color: #007700">]);<br />}<br /><br /></span><span style="color: #0000BB">cubrid_close_request</span><span style="color: #007700">(</span><span style="color: #0000BB">$history_req</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">cubrid_disconnect</span><span style="color: #007700">(</span><span style="color: #0000BB">$conn</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
   </div>

   <div class="example-contents"><p>El ejemplo anterior mostrará:</p></div>
   <div class="example-contents screen">
<div class="examplescode"><pre class="examplescode">athlete              host_year score      unit
Phelps Michael       2004      51.25      time</pre>
</div>
   </div>
  </div>
 </div>


 <div class="refsect1 seealso" id="refsect1-function.cubrid-execute-seealso">
  <h3 class="title">Ver también</h3>
  <ul class="simplelist">
   <li><span class="function"><a href="function.cubrid-prepare.php" class="function" rel="rdfs-seeAlso">cubrid_prepare()</a> - Prepara una consulta SQL para su ejecuci&oacute;n</span></li>
   <li><span class="function"><a href="function.cubrid-bind.php" class="function" rel="rdfs-seeAlso">cubrid_bind()</a> - Vincular variables para una sentencia preparada como par&aacute;metros</span></li>
   <li><span class="function"><a href="function.cubrid-next-result.php" class="function" rel="rdfs-seeAlso">cubrid_next_result()</a> - Recupera el resultado de la siguiente consulta durante la ejecuci&oacute;n
   de m&uacute;ltiples consultas SQL</span></li>
   <li><span class="function"><a href="function.cubrid-close-request.php" class="function" rel="rdfs-seeAlso">cubrid_close_request()</a> - Cerrar el gestor de solicitud</span></li>
   <li><span class="function"><a href="function.cubrid-commit.php" class="function" rel="rdfs-seeAlso">cubrid_commit()</a> - Consigna una transacci&oacute;n</span></li>
   <li><span class="function"><a href="function.cubrid-rollback.php" class="function" rel="rdfs-seeAlso">cubrid_rollback()</a> - Anula una transacci&oacute;n</span></li>
  </ul>
 </div>


</div><?php manual_footer($setup); ?>