Łączenie z zewnętrzną bazą MySQL

0

Cześć,

Mam ciekawy problem, przynajmniej dla mnie bo dopiero zaczynam przygodę z C#. Mam dwie zewnętrzne bazy danych, jedna utworzona na localhost na xampp i druga zupełnie zewnętrzna na serwerze on-line. Staram się łączyć z tymi bazami wykorzystując mniej więcej taki oto kod:

 
        private void connectbtn_Click(object sender, RoutedEventArgs e)
        {
            pobierzDane();
        }
         public void pobierzDane()
        {
            string mojepolaczenie =
                "server=" + servertb.Text + ";" +
                "database=" + databasetb.Text + ";" +
                "uid=" + usertb.Text + ";" +
                "password=" + passwordbx.Password + ";";
                           MySqlConnection polaczenie = new MySqlConnection(mojepolaczenie);
            try
            {
                polaczenie.Open();
                MessageBox.Show("Połączono z bazą!");
            }
            catch (MySql.Data.MySqlClient.MySqlException ex)
            {
                MessageBox.Show("Błąd łączenia z bazą!");
            }
            polaczenie.Close();
        }
 

Wszystko idzie świetnie w momencie kiedy łącze się używając użytkownika, który nie ma przypisanego hasła tj. pole hasła jest puste. W przypadku gdy mam na przykład użytkownika admin i hasło admin, otrzymuję błąd połączenia. Jakieś pomysły o co chodzi?

Z góry dzięki za pomoc. Pozdrawiam,
Sebastian

0

Spróbuj pwd= zamiast password=

btw zapoznaj się z string.Format

0

pwd próbowałem, wpisywałem też wszystkie wartości na stałe. Nie pomogło. Ze string.Format się zapoznam z całą pewnością, chociaż w tym przypadku to raczej mi nie pomoże. Niemniej dzięki za sugestię.

0

A może tak konkretniej brak połączenie bo serwer jest nie osiągalny, nie prawidłowy login i hasło, jaki jest kod błędu?

0

Pokaż co jest wywalane w treści wyjątku:

 try
{
	polaczenie.Open();
	MessageBox.Show("Połączono z bazą!");
}
catch (MySql.Data.MySqlClient.MySqlException ex)
{
	MessageBox.Show(ex.ToString());
}
0

@grzesiek51114 sprawdź załącznik proszę.

0

Czytaj komunikaty błędów: Authentication with old password no longer supported use 4.1 style passwords
http://stackoverflow.com/questions/19074166/mysql-4-1-passwords
Jak to nie pomoże to spróbuj pogooglować coś więcej na ten temat.

0

@DibbyDum czytam komunikaty i szukam rozwiązania, ale też żeby owe komunikaty czytać to najpierw trzeba wiedzieć jak do nich dotrzeć.
@grzesiek51114 dał mi narzędzie i teraz szukam dalej. Screen wrzuciłem, bo może ktoś już znalazł coś czego ja dopiero szukam. Dzięki za link. Zaraz zobaczę czy coś tam znajdę.

0

Btw chroń dane osobowe, bo przypadkowo na screenie jest co nieco o Tobie :-)

0

Przygodę z językiem należy zaczynać po pierwsze od składni, po drugie od podstawowych narzędzi, takich jak debuger. Rzucanie się na aplikacje okienkowe i bazy danych nie jest dobrym pomysłem.

0

@grzesiek51114 dzięki za podpowiedź. Pomogła rozwiązać problem. A co do tych danych...:) Imię i nazwisko to żadne dane, które zależałoby mi ukrywać. Poza tym już mój podpis sporo zdradza w tej kwestii. ;)
@somekind dzięki za rady, ale poznałem już więcej niż jeden język i wiem całkiem dobrze jak rozpoczynać przygodę. Wiem, że chcesz dobrze, ale ja jednak znam siebie lepiej i wiem, że rozwiązując pewne bardziej złożone problemy poznam również zagadnienia, o których piszesz, a przy okazji się nie zanudzę/zniechęcę.

Dzięki za pomoc Panowie.

A co do samego problemu to było tak. Jeżeli idzie o bazę lokalną to musiałem sobie zainstalować connector w wersji 6.1.6. Jeżeli idzie o bazę on-line to tutaj pomogła zmiana serwera, bo ten pierwszy nie pozwalał mi na połączenie z zewnątrz. ;)

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