我有一个脚本,它使用PDO创建了2个与数据库的连接。
第一个连接是SQL Server,第二个连接是MySQL。
脚本工作正常,直到昨天。我想不出任何可能改变的事情。但是剧本现在失败了
这是我在尝试连接到SQL Server时获得的例外
SQLSTATE[IMSSP]: Invalid value 1 specified for option PDO::SQLSRV_ATTR_QUERY_TIMEOUT.
我在Apache 2.4.12上运行PHP 6.6
我查看了脚本,连接应该没有问题。
这是我的连接字符串
$connString = 'sqlsrv:Server=MyIP,1433;Database=MyDBname';
$pdo_opt[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$pdo_opt[PDO::ATTR_DEFAULT_FETCH_MODE] = PDO::FETCH_ASSOC;
$pdo_opt[PDO::MYSQL_ATTR_INIT_COMMAND] = 'SET NAMES utf8';
$pdo_opt[PDO::MYSQL_ATTR_LOCAL_INFILE] = true;
$pdo_opt[PDO::SQLSRV_ATTR_ENCODING] = PDO::SQLSRV_ENCODING_UTF8;
try {
$pdo = new PDO($connString, $username, $password, $pdo_opt);
} catch(Exception $e){
exit($e->getMessage());
}
如何更正此问题?或者我应该从哪里开始调查此问题?
答案 0 :(得分:1)
我明白了。我通过添加这行代码来修复它
$pdo_opt[PDO::SQLSRV_ATTR_QUERY_TIMEOUT] = 30;