2015-08-21 2 views
2

Давайте проверим этот маленький кусочек кода:PDO DBLIB с "объявить" в запросе возвращает ложь

$p = new PDO('dblib:host=HOST;dbname=DBNAME',USER,PASS); 
$sql = " 
declare @tutu int = 100; 
select @tutu [tutu]; 
"; 
$stmt = $p->prepare($sql); 
$stmt->execute(); 
var_dump($stmt->fetch(PDO::FETCH_ASSOC)); 

Это возвращает:

Их (ложь)

+0

Вы должны добавить, что изменить в ответ :) –

ответ

1

использование nextRowset();

$p = new PDO('dblib:host=HOST;dbname=DBNAME',USER,PASS); 
$sql = " 
declare @tutu int = 100; 
select @tutu [tutu]; 
"; 
$stmt = $p->prepare($sql); 
$stmt->execute(); 
$stmt->nextRowset(); 
var_dump($stmt->fetch(PDO::FETCH_ASSOC)); 

Это возвращает:

array(1) { 
    [0]=> 
    array(1) { 
    ["tutu"]=> 
    string(3) "100" 
    } 
} 
Смежные вопросы