PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

ibase_fetch_assoc> <ibase_errmsg
Last updated: Fri, 04 Jul 2008

view this page in

ibase_execute

(PHP 4, PHP 5)

ibase_execute — Ejecutar una consulta previamente preparada

Descripción

resource ibase_execute ( resource $consulta [, mixed $arg_sustitucion [, mixed $... ]] )

Ejecuta una consulta preparada por ibase_prepare().

Este mecanismo es mucho más eficiento que el uso de ibase_query() si repite el mismo tipo de consulta varias veces sólamente modificando ciertos parámetros.

Lista de parámetros

consulta

Una consulta InterBase preparada por ibase_prepare().

arg_sustitucion

...

Valores retornados

Si la consulta genera un error, se devuelve FALSE. Si tiene éxito y existe un conjunto de resultados (posiblemente vacío), tal como ocurre con una consulta SELECT, se devuelve el identificador de resultado. Si la consulta fue exitosa y no hay resultados, se devuelve TRUE.

Note: En PHP 5.0.0 y versiones posteriores, esta función devuelve el número de filas afectadas por la consulta (si es > 0 y aplicable al tipo de sentencia). Una consulta que haya tenido éxito, pero no afectó fila alguna (p.ej. una operación UPDATE sobre un registro inexistente) devolverá TRUE.

Ejemplos

Example #1 Ejemplo de ibase_execute()

<?php

$gestor_db 
ibase_connect($host$nombre_usuario$contrasenya);

$cambios = array(
    
=> 'Eric',
    
=> 'Filip',
    
=> 'Larry'
);

$consulta ibase_prepare($dbh"UPDATE FOO SET BAR = ? WHERE BAZ = ?");

foreach (
$cambios as $baz => $bar) {
    
ibase_execute($consulta$bar$baz);
}

?>

Ver también



add a note add a note User Contributed Notes
ibase_execute
caveman
24-Jan-2003 07:18
ibase_execute only return resource id not the actual result, you need to use ibase_fetch_row or ibase_fetch_object to retrieve actual result.

On the example above given by anthony
it should be like these

 $dbh = ibase_connect ( $host, $username, $password ) ;
 $stmt = 'SELECT * FROM "EMPLOYEE" WHERE "SALARY" = ? AND "DEPT_CD" = ? ;' ;
 $prep = ibase_prepare ( $dbh, $stmt ) ;

 $salary = Array ( "10000", "25000", "33000", "48000" ) ;
 $dept_cd = 'SALES' ;

 foreach ( $salary as $val ) {
   $res = ibase_execute ($prep, $val, $dept_cd);
   $taxForm[$val] = ibase_fetch_row ($res);
}
mclap at ulstu dot ru
08-Sep-2002 03:54
For variable argument list in ibase_execute you can use folowing functions:

For PHP >= 4.0.4:

function db_execute($stmt,$data)
{
    if(!is_array($data))
        return ibase_execute($stmt,$data);
    array_unshift($data,$stmt);
    $rc=call_user_func_array('ibase_execute',$data);
    return $rc;
}

For any version of PHP:
function db_execute($stmt,$data)
{
    if(!is_array($data))
        return ibase_execute($stmt,$data);

    $params = array();
    while( list($k,$v) = each($data) )
        $params[$k] = '$data['.$k.']';
    eval('$rc=ibase_execute($stmt,'.join(',',$params).');');

    return $rc;
}

ibase_fetch_assoc> <ibase_errmsg
Last updated: Fri, 04 Jul 2008
 
 
show source | credits | sitemap | contact | advertising | mirror sites