PDO::exec

PHP PDO 參考手冊(cè)PHP PDO 參考手冊(cè)

PDO::exec — 執(zhí)行一條 SQL 語句,并返回受影響的行數(shù)(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)


說明

語法

int PDO::exec ( string $statement )

PDO::exec() 在一個(gè)單獨(dú)的函數(shù)調(diào)用中執(zhí)行一條 SQL 語句,返回受此語句影響的行數(shù)。

PDO::exec() 不會(huì)從一條 SELECT 語句中返回結(jié)果。對(duì)于在程序中只需要發(fā)出一次的 SELECT 語句,可以考慮使用 PDO::query()。

參數(shù)說明:

statement: 要被預(yù)處理和執(zhí)行的 SQL 語句。


返回值

PDO::exec() 返回受修改或刪除 SQL 語句影響的行數(shù)。如果沒有受影響的行,則 PDO::exec() 返回 0。

下面例子依賴 PDO::exec() 的返回值是不正確的,其中受影響行數(shù)為 0 的語句會(huì)導(dǎo)致調(diào)用 die() :

<?php
$db->exec() or die(print_r($db->errorInfo(), true));
?>

實(shí)例

執(zhí)行一條 DELETE 語句

計(jì)算由一條不帶 WHERE 字句的 DELETE 語句刪除的行數(shù)。

<?php
$dbh = new PDO('odbc:sample', 'db2inst1', 'ibmdb2');

/*  刪除 FRUIT 數(shù)據(jù)表中滿足條件的所有行 */
$count = $dbh->exec("DELETE FROM fruit WHERE colour = 'red'");

/* 返回被刪除的行數(shù) */
print("Deleted $count rows.\n");
?>

以上例程會(huì)輸出:

Deleted 1 rows.

PHP PDO 參考手冊(cè)PHP PDO 參考手冊(cè)