Существует различие между odbc: и dblib:
В нашем приложении требуется обновление mssql server 2016, где я обнаружил, что dblib не поддерживает соединение, поэтому мы использовали odbc для PDO.
$pdo = new PDO('odbc:Driver=mssqldriver17;Server='.$host.';database='.$dbName, $dbuser, $myPass);
$sql = 'SELECT 0.00 as num';
$DataObject = $pdo->prepare($sql);
$DataObject->execute();
print "<pre>";
$Data = $DataObject->fetchAll();
print_r($Data);
Array
(
[0] => Array
(
[num] => .00
[0] => .00
)
)
В предыдущей версии я проверил с DBLIB и ODBC я нашел другой результат для даты и номера
Для вышеприведенного кода вывод для ODBC => .00
В то время как для DBLIB он возвращался как => 0,00
Точно так же на дату
Выше кода выход для ODBC => 1975-10-24 00: 00: 00.000
Принимая во внимание, что для DBLIB это возвращалось как => 1975-10-24 00:00:00
Любые идеи о том, как получить подобное, как DBLIB.
Машина
Ubuntu 16.04 php5.6
Задача ещё не решена.
Других решений пока нет …