Data-Source-Einstellung im Connection-String
Betrachten Sie diese beiden Verbindungszeichenfolgen, die anderen nur durch Ihre Einstellungen für die Datenquelle:
Data Source=OEM-PC\SQLEXPRESS;Initial Catalog=<databasename>;
Integrated Security=False;Persist Security Info=False;
User ID=<userid>;Password=<password>;Connect Timeout=30
Data Source=.;Initial Catalog=<databasename>;
Integrated Security=False;Persist Security Info=False;
User ID=<userid>;Password=<password>;Connect Timeout=30
Warum ist es so, dass wenn ich die erste, die ich geworfen, die Fehler
Login fehlgeschlagen für Benutzer Grund: Eine Anmeldung mit der
SQL-Authentifizierung ist fehlgeschlagen. Server ist konfiguriert für Windows
Authentifizierung nur. [CLIENT: ]
Ich bin mit SQL Server 2008 Express und konfiguriert wird der server für die gemischte Authentifizierung und ich habe verdreifacht, überprüfen Sie, dass die Verwendung
(a) master.dbo.xp_instance_regread
,
(b) SERVERPROPERTY()
und
(c) master.sys.xp_loginconfig
.
Außerdem aktivieren die sa
login macht keinen Unterschied.
Lassen Sie mich wissen, wenn weitere Daten erforderlich ist. Danke.
- Auf eine Vermutung, haben Sie mehrere SQL Server-Instanzen installiert haben, nicht nur eine. Der Standardwert (auch über
.
) hat der SQL-Authentifizierung einrichten und aktiviert, wobei dieSQLExpress
Instanz nicht. - Du hast ganz Recht, aber ich bin ratlos. Ich habe einen SQLEXPRESS-Instanz und einer anderen Instanz MSSQLSERVER, so hörte ich auf die SQLEXPRESS-Instanz und ich habe versucht, um eine gültige Verbindungszeichenfolge für den MSSQLSERVER. Aber dann in das gültige Verbindungszeichenfolge, die ich nutzen kann "Data Source=.;Initial Catalog= "<Datenbankname>;Integrated Security=False;Persist Security Info=False;User ID= "< "userid" >"; Password= "<Passwort>;Connect Timeout=30", aber nicht "Data Source=OEM-PC\MSSQLSERVER;Initial Catalog=" <Datenbankname>;Integrated Security=False;Persist Security Info=False;User ID= " <userid>;Password=<Passwort>;Connect Timeout=30"
- Ich dachte, die richtige syntax ist "ServerName\myInstanceName" von hier, so gibt es eine Namenskonvention, die ich verpasst, dass "OEM-PC\MSSQLSERVER" nicht funktionieren würde?
- Wenn du deinen Kommentar als Antwort, ich werde setzen Sie ein Häkchen. Sie wurden an Ort und Stelle mit dem problem. Danke.
- Ich glaube, ich weiß jetzt, warum "OEM-PC\MSSQLSERVER" funktioniert nicht. Nach hier, "Beim herstellen der Verbindung zu SQL Server verwenden wir die physischen server-name für die Standard-Instanz und physischen server-name\Instanzname für eine benannte Instanz." Ausführen von SELECT SERVERPROPERTY ('InstanceName') auf MSSQLSERVER Beispiel gibt NULL zurück, was bedeutet, dass es der Standard, wie beschrieben, hier.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Klingt, als hätten Sie mehrere verschiedene Instanzen von SQL Server installiert.
Den Standard (auch zugegriffen .) hat der SQL-Authentifizierung einrichten und aktiviert, wobei die SQLExpress-Instanz nicht.
Verwenden SQL Server-Konfigurations-Manager, um herauszufinden, was Instanzen, die Sie haben, und konfigurieren Sie diese richtig.