PDOStatement::execute
Выполняет инструкцию.
Синтаксис
bool PDOStatement::execute ([ $input ] );
Параметры
$input: ассоциативный массив, содержащий значения для маркеров параметров (необязательно).
Возвращаемое значение
Значение true в случае успеха, в противном случае — значение false.
Замечания
Инструкции, выполняемые с помощью PDOStatement::execute, необходимо сначала подготовить с помощью PDO::prepare. Статья Выполнение прямых и подготовленных инструкций в драйвере PDO_SQLSRV содержит сведения о том, как указать выполнение прямой или подготовленной инструкции.
Все значения массива входных параметров обрабатываются как значения PDO::PARAM_STR.
Если подготовленная инструкция содержит маркеры параметров, необходимо вызвать PDOStatement::bindParam, чтобы осуществить привязку переменных PHP к маркерам параметров или передать массив значений параметров, используемых только в качестве входных.
Добавлена поддержка PDO версии 2.0 драйверов Майкрософт для PHP для SQL Server.
Пример
<?php
$database = "AdventureWorks";
$server = "(local)";
$conn = new PDO( "sqlsrv:server=$server ; Database = $database", "", "");
$query = "select * from Person.ContactType";
$stmt = $conn->prepare( $query );
$stmt->execute();
while ( $row = $stmt->fetch( PDO::FETCH_ASSOC ) ){
print "$row[Name]\n";
}
echo "\n";
$param = "Owner";
$query = "select * from Person.ContactType where name = ?";
$stmt = $conn->prepare( $query );
$stmt->execute(array($param));
while ( $row = $stmt->fetch( PDO::FETCH_ASSOC ) ){
print "$row[Name]\n";
}
?>
Примечание.
Рекомендуется использовать строки в качестве входных данных при привязке значений к десятичным или числовым столбцам, чтобы обеспечить точность и правильность, поскольку PHP имеет ограниченную точность для чисел с плавающей запятой. То же касается и столбцов bigint, особенно в том случае, если значения выходят за пределы диапазона целых чисел.