Я подключаюсь к серверу MS SQL с PDO, используя драйвер sqlsrv.
Версия PHP – 5.3.24. Рабочее соединение выглядит так:
$dsny = "sqlsrv:Server=xx1;Database=xx2"; $usery = 'xx3'; $passwordy = 'xx4'; $dbhy = new PDO($dsny, $usery, $passwordy);
**
Но мне нужно установить символы, а затем я попробую:
$dsny = "sqlsrv:Server=xx1;Database=xx2;charset=utf8"; $usery = 'xx3'; $passwordy = 'xx4'; $dbhy = new PDO($dsny, $usery, $passwordy);
Когда я добавляю charset, я получаю эту ошибку: «Fatal error: Uncaught exception« PDFException »с сообщением« SQLSTATE [IMSSP]: недопустимое ключевое слово «charset» было указано в строке dsn »,
Так что может вызвать эту ошибку?
Из того, что я читал, мне нужно сделать это, так как я запускаю новую версию PHP.
Вам необходимо применить атрибут после подключения:
$dbhy->setAttribute(PDO::SQLSRV_ATTR_ENCODING, PDO::SQLSRV_ENCODING_UTF8);
См. https://msdn.microsoft.com/en-us/library/ff628157(v=sql.105).aspx