Ich versuche etwas zu tun, was meiner Meinung nach sehr einfach ist. Ich habe eine Verbindungszeichenfolge, die ich aus einer Datenbank ergreife. Wenn ich eine neue Instanz der SQL-Verbindung erstelle, sieht es aus (wenn ich das Objekt debugge und ansehe), als ob es die DB-Verbindungszeichenfolge richtig auffüllt. Die Fehler messasge, die ich bekomme, lassen mich denken, dass alle Informationen nach dem Unterstrich im Datenbanknamen beseitigt werden.Datenbankname nach Unterstrich in der Verbindungszeichenfolge wird ignoriert
-Code Ex:
Database db = new SqlDatabase(ConnectionString); // Connection string appears correct
DbCommand dbCommand = db.GetStoredProcCommand("StoredProcName");
DataSet approverDataset = db.ExecuteDataSet(dbCommand); // when this executes, exception is generated
Wenn ich diesen Code ausführen ich mit folgenden Ausnahme Meldung begrüßt werde: Der Server Haupt „testdb_psidentity“ ist nicht in der Lage, die Datenbank „testdb“ unter dem aktuellen Sicherheits zugreifen
KontextHier ist meine Verbindung String:
DataSource=testserver.com;Database=testdb_ps;Trusted_Connection=false;uid=testdb_psidentity;pwd=testpwd
ich habe versucht zu ändern, dies zu:
Und während das den vollständigen Namen der Datenbank zu erhalten scheint, scheint es auch nach einer Datenbank mit diesen Klammern im Namen zu suchen. Wie bekomme ich diesen Fehler: Kann Datenbank "[testdb_ps]" nicht öffnen, die von der Anmeldung angefordert wird. Die Anmeldung ist fehlgeschlagen. Anmeldung fehlgeschlagen für Benutzer 'testdb_psidentity'.
Allerdings kann ich eine Verbindung zur Datenbank mit diesem Login/Passwort in SQL Server Management Studio anmelden.
Irgendwie kann ich es akzeptieren, den Datenbanknamen testdb_ps Datenbankname? Ich kann den Datenbanknamen nicht einfach ändern, weil ich keinen Zugriff darauf habe, und mir wurde gesagt, dass das Ändern des Datenbanknamens einfach nicht passieren wird.
hat Ihr Benutzer "testdb_psidentity" connect/execute Berechtigungen für die Datenbank? Wenn Sie sich nicht sicher sind, können Sie es überprüfen, indem Sie auf -> mit der rechten Maustaste auf Datenbank -> Eigenschaften -> Berechtigungen -> wählen Sie den Benutzer und überprüfen Sie unter expliziten Registerkarte ... – NiK
Leider, wenn ich mit der rechten Maustaste auf die DB, ich habe keinen Zugang, um das zu sehen. –
Erreiche aber versuche die Datenquelle in die Syntax [testserver.com] oder [testserver]. [Com] zu setzen. Und Sie sind sicher, dass der Name der Quelle testserver.com (nicht testserver) ist. Sehen Sie den Namen in SMSS – Paparazzi