Я хотел бы вернуть INT как целые числа из моей базы данных. На данный момент все значения загружаются как строки. База данных - MSSQL 2012, и я использую драйвер PDO (для v5.6).Настройки Laravel PDO?
Попытка установить здесь свойства (как показано here on fideloper.com, но я не знаю, если это еще возможно):
'sqlsrv' => [
'driver' => 'sqlsrv',
'charset' => 'utf8',
'prefix' => '',
......
'options' => array(
PDO::ATTR_STRINGIFY_FETCHES => false,
PDO::ATTR_EMULATE_PREPARES => false,
),
],
Но всегда получаю сообщение об ошибке:
SQLSTATE[IMSSP]: The given attribute is only supported on the PDOStatement object.
Как я могу установите любые настройки для драйвера PDO, чтобы вернуть INT как целые, а не как строки.
Это еще не работает:
$pdo = DB::connection()->getPdo();
$pdo->setAttribute(PDO::ATTR_STRINGIFY_FETCHES, false);
$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
.. do ORM Query
Доведение ту же ошибку.
Может быть, кто-нибудь может мне помочь?
Работает ли оно, когда вы не устанавливаете атрибуты? Вы можете рассмотреть вопрос об открытии проблемы в git repo. –
Все работает нормально, больной получает только ВСЕ числовые значения в виде строк от larvel ORM.Я использую это как RESTful Webservice, и его глупо, чтобы преобразовать каждое значение из IOS в правильный тип данных;) - так что было бы здорово, если бы я мог получать значения как числовые. – derdida
Еще одна вещь, которую стоит рассмотреть - это поворот 'EMULATE_PREPARES'. –