Próbuję zrobić coś, co moim zdaniem jest bardzo proste. Mam ciąg połączenia, który jestem pobieranie z bazy danych. Kiedy tworzę nową instancję połączenia SQL, wygląda (kiedy debuguję i patrzę na obiekt), tak jakby poprawnie wypełniał ciąg połączenia db. Jednak komunikat błędu, który otrzymuję, sprawia, że myślę, że wszystkie informacje po podkreśleniu w nazwie bazy danych są eliminowane.Nazwa bazy danych po podkreśleniu w łańcuchu połączenia jest ignorowana
Kod 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
Kiedy uruchomić ten kod jestem witany z następującym komunikatem wyjątek: serwer główny „testdb_psidentity” nie jest w stanie uzyskać dostęp do bazy danych „testdb” w ramach obecnego bezpieczeństwa kontekst
Oto mój ciąg połączenia:
DataSource=testserver.com;Database=testdb_ps;Trusted_Connection=false;uid=testdb_psidentity;pwd=testpwd
próbowałem zmieniając to:
DataSource=testserver.com;Database=[testdb_ps];Trusted_Connection=false;uid=testdb_psidentity;pwd=testpwd
Chociaż wydaje się, że otrzymała pełną nazwę bazy danych, wydaje się, że szuka również bazy danych z tymi nawiasami. Po otrzymaniu tego błędu: Nie można otworzyć bazy danych "[testdb_ps]" żądanej przez login. Logowanie nie powiodło się. Logowanie nie powiodło się dla użytkownika "testdb_psidentity".
Jednak mogę zalogować się połączyć się z bazą danych za pomocą tego loginu/hasła w studio zarządzania serwerem SQL.
W jaki sposób mogę go zaakceptować nazwę bazy danych nazwa bazy danych testdb_ps? Nie mogę po prostu zmienić nazwy bazy danych, ponieważ nie mam do niej dostępu i powiedziano mi, że zmiana nazwy bazy danych po prostu się nie powiedzie.
czy twój użytkownik "testdb_psidentity" ma uprawnienia do łączenia/wykonywania w bazie danych? jeśli nie jesteś tego pewien, możesz to sprawdzić, przechodząc do -> kliknij prawym przyciskiem myszy na bazę danych -> właściwości -> uprawnienia -> wybierz użytkownika i sprawdź w jawnej zakładce ... – NiK
Niestety, kiedy kliknę prawym przyciskiem myszy DB, nie mam do tego dostępu. –
Osiągnij, ale spróbuj umieścić źródło danych w składni [testserver.com] lub [testserver]. [Com]. I jesteś pewien, że nazwa źródła to testserver.com (nie testserver). Zobacz nazwę w SMSS – Paparazzi