↑ PHP5, PDO - PHP Data Objects | ||||
Урок - Дополнительные методы класса PDOStatement | ||||
← Предыдущий урок Урок - Методы класса PDOStatement
|
Следующий урок → Урок - Методы обработки ошибок в PDO
|
Метод PDOStatement::closeCursor()
Метод PDOStatement::closeCursor() - закрывает курсор, откючает запрос для очердного выполнения.
echo "Вариант 1:<br>\n";
$pdoStatement = $pdo->prepare('SELECT * FROM `articles`');
$pdoStatement->execute();
print_r( $pdoStatement->fetch());
$pdoStatement->closeCursor();
while($row = $pdoStatement->fetch()){
print_r($row);
}
echo "Вариант 2:<br>\n";
$pdoStatement = $pdo->prepare('SELECT * FROM `articles`');
$pdoStatement->execute();
print_r( $pdoStatement->fetch());
while($row = $pdoStatement->fetch()){
print_r($row);
}
В первом варианте мы вызываем метод PDOStatement::closeCursor(), в результате чего цикл while(...) не будет выполнятся, так как метод PDOStatement::fetch() не вернет больше ни одной строки.
Во втором варианте отсутствие PDOStatement::closeCursor() приводит к выводу всех полученных данных в цикле while(...)
Метод PDOStatement::columnCount()
Метод PDOStatement::columnCount() возвращает количество колонок в результате выполнения запроса.
$pdoStatement = $pdo->prepare('SELECT * FROM `articles`');
$colcount = $pdoStatement->columnCount();
print("До выполнения запроса: $colcount<br>\n");
$pdoStatement->execute();
$colcount = $pdoStatement->columnCount();
print("После выполнения запроса: $colcount<br>\n");
В примере видно, что вызывать метод PDOStatement::columnCount() имеет смысл только после выполнения SQL запроса.
Метод PDOStatement::debugDumpParams()
Метод PDOStatement::debugDumpParams() выводит в поток вывода информацию о выполненном запросе.
$sql = 'SELECT * FROM `articles` WHERE `id` = :id';
$pdoStatement = $db->prepare($sql);
$id = 1;
$pdoStatement->bindParam(':id', $id, PDO::PARAM_INT);
$pdoStatement->execute();
$pdoStatement->debugDumpParams();
$sql = 'SELECT * FROM `articles` WHERE :id1 $pdoStatement = $pdo->query($sql);
$result = $pdoStatement->setFetchMode(PDO::FETCH_ASSOC);
print_r( $pdoStatement->fetchAll());
↑ PHP5, PDO - PHP Data Objects | ||||
Урок - Дополнительные методы класса PDOStatement | ||||
← Предыдущий урок Урок - Методы класса PDOStatement
|
Следующий урок → Урок - Методы обработки ошибок в PDO
|