[英]PHP - PDO SQLSRV - Connection string is not valid [87]
I´m trying to connect to a SQL Server 2008 R2 via PHP. 我正在尝试通过PHP连接到SQL Server 2008 R2。 I used the following code: 我使用了以下代码:
try {
$server = "servername.do.ma.in\\MSSQLSERVER";
$user = "username";
$pass = "password";
$db = "databasename";
$dbh= new PDO('sqlsrv:Server = ' . $server . '; Database = ' . $db, $user, $pass);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
echo 'Verbindung fehlgeschlagen: ' . $e->getMessage();
}
But when i run this code i get the following error: 但是,当我运行此代码时,我收到以下错误:
SQLSTATE[08001]: [Microsoft][ODBC Driver 11 for SQL Server]SQL Server Network Interfaces: Connection string is not valid [87].
Does someone know this error and know what to do? 有人知道这个错误,知道该怎么办?
Thanks in advance. 提前致谢。
Solution: 解:
The Port was not defined. 端口未定义。 The following code worked for me. 以下代码对我有用。 I´ve added the Port 1433 to the $server Variable. 我已将Port 1433添加到$ server变量中。
$server = "servername.do.ma.in, 1433";
$user = "username";
$pass = "password";
$db = "databasename";
$dbh = new PDO("sqlsrv:Server={$server};Database={$db};", $user, $pass);
This will work: 这将有效:
$dbh = new PDO("sqlsrv:Server={$server};Database={$db};", $user, $pass);
If it's still not valid, there's something wrong with your connection variables. 如果它仍然无效,则连接变量有问题。
EDIT : 编辑 :
This looks similar to your problem: 这与您的问题类似:
http://laravel.io/forum/01-20-2015-sql-server-2012-db-connection-with-laravel-42 http://laravel.io/forum/01-20-2015-sql-server-2012-db-connection-with-laravel-42
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.