PDOStatement::execute

PHP ドライバーのダウンロード

ステートメントを実行します。

構文

  
bool PDOStatement::execute ([ $input ] );  

パラメーター

$input: (省略可能) パラメーター マーカーの値を含む連想配列。

戻り値

成功した場合は true、それ以外の場合は false。

解説

PDOStatement::execute で実行するステートメントは、最初に PDO::prepareで準備する必要があります。 ステートメントの直接実行または準備された実行を指定する方法については、「 Direct Statement Execution and Prepared Statement Execution in the PDO_SQLSRV Driver 」(PDO_SQLSRV ドライバーでの直接ステートメント実行と準備されたステートメントの実行) を参照してください。

入力パラメーター配列のすべての値は、PDO::PARAM_STR 値として扱われます。

準備されたステートメントにパラメーター マーカーが含まれる場合は、PDOStatement::bindParam を呼び出して PHP 変数をパラメーター マーカーにバインドするか、入力専用パラメーター値の配列を渡す必要があります。

PDO のサポートは Microsoft SQL Server 用 Drivers for PHPのバージョン 2.0 で追加されました。

<?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";  
}  
?>  

注意

値を 10 進数列または数値列にバインドするときは、有効桁数と精度を保持するために、入力として文字列を使用することをお勧めします。これは、PHP には浮動小数点数の有効桁数に制限があるためです。 値が整数の範囲外にある場合は特に、同じことが bigint 列にも適用されます。

参照

PDOStatement クラス

PDO