PDOStatement::execute
Executa uma instrução.
Sintaxe
bool PDOStatement::execute ([ $input ] );
Parâmetros
$input: (opcional) uma matriz associativa contendo os valores para os marcadores de parâmetro.
Valor de retorno
true se for bem-sucedido; caso contrário, false.
Comentários
Instruções executadas com PDOStatement::execute devem ser preparadas previamente com PDO::prepare. Consulte Execução de instrução direta e execução de instrução preparada no driver PDO_SQLSRV para obter informações sobre como especificar a execução da instrução preparada ou direta.
Todos os valores da matriz de parâmetros de entrada são tratados como valores PDO::PARAM_STR.
Se a instrução preparada inclui marcadores de parâmetro, você deve chamar PDOStatement::bindParam para associar as variáveis PHP aos marcadores de parâmetro ou passar uma matriz de valores de parâmetro apenas de entrada.
O suporte para PDO foi adicionado na versão 2.0 dos Drivers da Microsoft para PHP para SQL Server.
Exemplo
<?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";
}
?>
Observação
É recomendável usar cadeias de caracteres como entradas ao associar valores a uma coluna decimal ou numérica a fim de garantir a precisão e a exatidão, pois o PHP tem uma precisão limitada para números de ponto flutuante. O mesmo se aplica a colunas bigint, principalmente quando os valores estão fora do intervalo de um inteiro.