Executes a prepared Query


maxdb_stmt::execute

(PECL maxdb >= 1.0)

maxdb_stmt_execute -- maxdb_stmt::executeExecutes a prepared Query

Описание

Процедурный стиль

bool maxdb_stmt_execute ( resource $stmt )

Объектно-ориентированный стиль

bool maxdb_stmt::execute ( void )

The maxdb_stmt_execute() function executes a query that has been previously prepared using the maxdb_prepare() function represented by the stmt resource. When executed any parameter markers which exist will automatically be replaced with the appropiate data.

If the statement is UPDATE, DELETE, or INSERT, the total number of affected rows can be determined by using the maxdb_stmt_affected_rows() function. Likewise, if the query yields a result set the maxdb_fetch() function is used.

Замечание:

When using maxdb_stmt_execute(), the maxdb_fetch() function must be used to fetch the data prior to preforming any additional queries.

Возвращаемые значения

Возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки.

Примеры

Пример #1 Объектно-ориентированный стиль

<?php
$maxdb 
= new maxdb("localhost""MONA""RED""DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   
printf("Connect failed: %s\n"maxdb_connect_error());
   exit();
}

$maxdb->query("CREATE TABLE temp.mycity LIKE hotel.city");

/* Prepare an insert statement */
$query "INSERT INTO temp.mycity (zip, name, state) VALUES (?,?,?)";
$stmt $maxdb->prepare($query);

$stmt->bind_param("sss"$val1$val2$val3);

$val1 '11111';
$val2 'Georgetown';
$val3 'NY';

/* Execute the statement */
$stmt->execute();

$val1 '22222';
$val2 'Hubbatown';
$val3 'CA';

/* Execute the statement */
$stmt->execute();

/* close statement */
$stmt->close();

/* retrieve all rows from myCity */
$query "SELECT zip, name, state FROM temp.mycity";
if (
$result $maxdb->query($query)) {
   while (
$row $result->fetch_row()) {
       
printf("%s (%s,%s)\n"$row[0], $row[1], $row[2]);
   }
   
/* free result set */
   
$result->close();
}

/* remove table */
$maxdb->query("DROP TABLE temp.mycity");

/* close connection */
$maxdb->close();
?>

Пример #2 Процедурный стиль

<?php
$link 
maxdb_connect("localhost""MONA""RED""DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   
printf("Connect failed: %s\n"maxdb_connect_error());
   exit();
}

maxdb_query($link"CREATE TABLE temp.mycity LIKE hotel.city");

/* Prepare an insert statement */
$query "INSERT INTO temp.mycity (zip, name, state) VALUES (?,?,?)";
$stmt maxdb_prepare($link$query);

maxdb_stmt_bind_param($stmt"sss"$val1$val2$val3);

$val1 '11111';
$val2 'Georgetown';
$val3 'NY';

/* Execute the statement */
maxdb_stmt_execute($stmt);

$val1 '22222';
$val2 'Hubbatown';
$val3 'CA';

/* Execute the statement */
maxdb_stmt_execute($stmt);

/* close statement */
maxdb_stmt_close($stmt);

/* retrieve all rows from myCity */
$query "SELECT zip, name, state FROM temp.mycity";
if (
$result maxdb_query($link$query)) {
   while (
$row maxdb_fetch_row($result)) {
       
printf("%s (%s,%s)\n"$row[0], $row[1], $row[2]);
   }
   
/* free result set */
   
maxdb_free_result($result);
}

/* remove table */
maxdb_query($link"DROP TABLE temp.mycity");

/* close connection */
maxdb_close($link);
?>

Результатом выполнения данного примера будет что-то подобное:

 11111 (Georgetown,NY) 22222 (Hubbatown,CA) 

Смотрите также