Icon edb_execute

Executes a command, returning a cursor if the command is a SELECT statement, a script that returns a cursor, a direct table command, or a procedure that returns a cursor.

Syntax
edb_execute(<CommandHandle>
            [[, <RequestSensitive>]
             [,<RequestExecutionPlan>]])

<CommandHandle> =

Handle of command returned by edb_prepare function

<RequestSensitive> =

If TRUE, requests a sensitive result set for SELECT statements

<RequestExecutionPlan> =

If TRUE, requests an execution plan for a SELECT, INSERT,
UPDATE, or DELETE statement

Returns
Cursor handle if successful, or FALSE if there are any errors

Usage
The edb_execute function executes a command, returning a cursor if the command is a SELECT statement, a script that returns a cursor, a direct table command, or a procedure that returns a cursor. If the command does not return a cursor, then the cursor handle returned will be 0.

You can request that a SELECT statement return a sensitive result set by setting the RequestSensitive parameter to TRUE. For more information on sensitive and insensitive result sets, please see the Result Set Cursor Sensitivity topic in the SQL manual.

You can request an execution plan for any SELECT, INSERT, UPDATE, or DELETE statement by setting the RequestExecutionPlan parameter to TRUE. You can then retrieve the execution plan using the edb_execplan function.

Examples
<?php

// The following script connects to an ElevateDB
// Server and database, prepares a parameterized
// SELECT statement, sets the parameter values,
// executes the statement, and then displays the
// result set in an HTML table

$con = edb_connect("type=remote;charset=Ansi;address=127.0.0.1;"+
                   "uid=Administrator;pwd=EDBDefault;database=Test");
if (!$con)
  {
  die("Could not connect: " . edb_errmsg());
  }

$cmd = edb_prepare($con,"SELECT * FROM customer WHERE State=:State");
edb_setparam($cmd,"State","FL");
$cursor = edb_execute($cmd);

echo "<table border=\"1\" cellpadding=\"3\">";

echo "<tr>";

// Dump out the column headers

for ($i = 0; $i < edb_colcount($cursor); $i++)
   {
   $colinfo = edb_colinfo($cursor,$i);
   echo "<td>" . $colinfo["Name"] . "</td>";
   }

echo "</tr>";

// Now dump out the rows

while (!edb_eof($cursor)):
   echo "<tr>";
   for ($i = 0; $i < edb_colcount($cursor); $i++)
      {
      $col = edb_getcol($cursor,$i);
      if (is_null($col))
         echo "<td>NULL</td>";
      else
         echo "<td>" . $col . "</td>";
      }
   echo "</tr>";
   edb_next($cursor);
endwhile;

echo "</table>";

edb_disconnect($con);
?>
Image