SQLSTATE: Benutzeranmeldung fehlgeschlagen
P粉107991030
2023-08-25 10:03:40
<p>Ich verwende die folgende PHP-Verbindungsdatei, um eine Verbindung zu meiner SQL Server-Datenbank herzustellen. </p>
<pre class="brush:php;toolbar:false;"><?php
$servername = "...";
$username = "...";
$password = "";
$dbname = "...";
versuchen {
$conn = new PDO("sqlsrv:Server=$servername;Database=$dbname", $username, $password);
echo "Erfolgreich mit $dbname bei $servername verbunden.";
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} Catch (PDOException $pe) {
die ("Konnte keine Verbindung zur Datenbank $dbname herstellen:". $pe->getMessage());
}
?></pre>
<p>Ich erhalte ständig die folgende Fehlermeldung: </p>
<blockquote>
<p>"SQLSTATE[28000]: [Microsoft][ODBC-Treiber 17 für SQL Server][SQL
Server] Die Anmeldung für Benutzer $Benutzername ist fehlgeschlagen. </p>
</blockquote>
<p>Ich habe die neuesten Versionen von ODBC 17 und 18 heruntergeladen, von denen ich gehofft hatte, dass sie dieses Problem lösen würden, aber das ist nicht der Fall. Meine SQL Server-Authentifizierung ist auch auf SQL Server- und Windows-Authentifizierung eingestellt. </p>
如果使用 laravel,在您的 .env 文件中:
你就可以使用它了。注意DB_CONNECTION=sqlsrv,DB_HOST必须为“PC-name\SQL-server-name”格式,DB_PORT为空值。
您可以使用与纯php代码类似的方式。