Błąd przy nawiązaniu połączenia z MSSQL

0

Cześć,
Posiadam VS 2012 i Management Studio 2012.
Próbuje się połączyć z lokalną bazą danych, która załadowałam do MS 2012.
W MS mogę z niej korzystać normalnie tzn robić zapytania, przeglądać itp.

Napisałam taki kawałek kodu, który niestety nie działa

private void Button_Click(object sender, RoutedEventArgs e)
        {
            string connectionString = GetConnectionString();
            SqlConnection connection = new SqlConnection(connectionString);
            try
            {
                connection.Open();
                MessageBox.Show("Połączenie ok");
            }
            catch (SqlException se)
            {
                MessageBox.Show("Błąd: " + se.StackTrace);
            }
            finally
            {
                connection.Close();
            }
        }
        private string GetConnectionString()
        {
            string host = @"localhost";
            int tcpPort = 12001;
            string dbName = "NORTHWND";
            string login = "sa";
            string password = "test";
            string connectionString =
            "Data Source=" + host + "," + tcpPort +
            ";Initial Catalog=" + dbName +
            ";User Id=" + login +
            ";Password=" + password + ";";
            return connectionString;
        } 

Otrzymuje taką wiadomość w czasie runtimeu

user image
user image

Bardzo proszę o pomoc.

Dodam, że login, hasło, nazwa bazy danych są poprawne.
Server SQL jest uruchomiony.
I pozwalam na połączenia zdalne.
user image

0

Baza na pewno nazywa się NORTHWND? Nie brakuje tam literki?
Poza tym czy baza zezwala na uwierzytelnianie loginem i hasłem, czy tylko kontami systemowymi?

0

Nie brakuje literki, nie przepisywałam ręcznie nazw, lecz kopiowałam w całości.
Zezwalam na oba rodzaje uwierzytelnień

user image

0

Przełącz uwierzytelnienie na windowsowe natomiast bazę danych wyślij na jakiś cloud...
u mnie pomaga w wielu przypadkach.

0

Nie mam doświadczenia, żadnego z chmurkami i nie mam pojęcia jak taką operację wykonać...
Chce tylko zalogować się do swojej bazy lokalnie...

0

kod, który przedstawiłaś wygląda poprawnie. Mało tego, pozwoliłem sobie na kopię kodu, po podstawieniu danych mojej bazy (utrzymywanej na/w chmurze) uzyskałem dostęp do bazy. Także ja by szukał winnego gdzie indziej poza kodem. Może zmienne środowiska?

0

@pixelplus
z jakiej chmury korzystasz? Płatna czy bez płatna?
Kod jest na pewno poprawny, ale nie rozumiem, czemu połączyć się nie da... przecież baza jest lokalna... wszystko wygląda ok...

0

ja korzystam z płatnej chmury od home.pl :)

0

No dobra, a jak ktos nie ma chmury i chce sie lokalnie polaczyc z baza danych, to co, nie ma już szans?

0

szanse zawsze są :) tylko pytanie jakie :)
szczerze to nigdy na localu nie pracowałem więc nie wiem :)

0

Spróbuj podać nazwę instancji serwera zamiast samego localhost.

0

już próbowałam...

0

Zrób backup bazy danych, z którą masz kłopot i odtwórz go na nowo utworzonej innej bazie...

0
gb_jet napisał(a):

Zrób backup bazy danych, z którą masz kłopot i odtwórz go na nowo utworzonej innej bazie...

IMO, nie wiele to pomoże, aczkolwiek spróbować można.....

0

Hmm... Znajdz swoja baze, w Server Explorer w visualu i we oknie Properties bedziesz mial ConnectionString, przekopiuj w calosci i sprobuj sie tak polaczyc. Jak zadziala to odpalasz debug i szukasz roznic miedzy lancuchami, jak nie to daj znac :>

0
n0name_l napisał(a):

Hmm... Znajdz swoja baze, w Server Explorer w visualu i we oknie Properties bedziesz mial ConnectionString, przekopiuj w calosci i sprobuj sie tak polaczyc. Jak zadziala to odpalasz debug i szukasz roznic miedzy lancuchami, jak nie to daj znac :>

pytanie czy czytałeś pierwszy (i nie tylko) post bo widzę że nie :)
autorka jest kobietą......
co do sensowności Twojego postu to zgadzam się :)

0

Dziękuje @n0name_l jesteś genialny - działa!
Tylko cały czas zastanawia mnie, czemu poprzedni connectionString nie zadziałał.
Nowy wygląda tak : Data Source=localhost\SQLEXPRESS;Initial Catalog=NORTHWND;User ID=sa;Password=***********
Kwestia portu? Poprzedni connectionString pewnie jest używany jest do połączeń zdalnych?

autorka jest kobietą......

a Ty @pixelplus lepiej zastanów się zanim coś napiszesz. Brak Ci manier i zaniżasz poziom portalu, powinni Cię wywalić.
Nie jedna kobieta na świecie lepiej potrafi programować od Ciebie.

0

ostro, aczkolwiek kulturalnie.
To ja Ci również odpowiem: nie obrażaj tu mnie. Chciałem pomóc, nie wyszło to - mówi się trudno i tyle. Może by tak dziękuję co?

0

Dobra, bo zaczynaja się końskie zaloty, więc i tak pewno trzeba będzie zamknąć.

Ale za pomysł z przenoszeniem bazy do chmury, bo lokalnie nie daje się połączyć - należy się perełka.

1 użytkowników online, w tym zalogowanych: 0, gości: 1