【发布时间】:2013-05-23 22:44:34
【问题描述】:
我正在使用 sqlsrv 驱动程序连接到带有 PDO 的 MS SQL 服务器。
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);
当我添加字符集时,我收到此错误: “致命错误:未捕获的异常 'PDFException' 带有消息 'SQLSTATE[IMSSP]:在 dsn 字符串中指定了无效的关键字 'charset'”
那么是什么导致了这个错误呢?
根据我的阅读,我需要这样做,因为我正在运行一个新的 PHP 版本。
【问题讨论】:
-
我尝试了 utf8、UTF8、utf-8、iso-8859-1、greek1 等。这似乎是关于“字符集”而不是我尝试设置的实际字符集.
-
sqlsrv DSN 支持这个关键字吗?
-
你是对的。这不是要走的路。我正在寻找设置字符的解决方案。
标签: php sql character-encoding pdo