Problem jest taki:
łączę się z bazą mysqla poprzez dbexpress :
MySQLCon.Params.Values['Hostname']:= adres_serwera;
MySQLCon.Params.Values['Database']:= nazwa_bazy;
MySQLCon.Params.Values['User_Name']:= user;
MySQLCon.Params.Values['Password']:= hasło;
MySQLCon.Connected:=true;
Wszystko działa i jest OK, łączę się poprawnie, ale tylko dopóki wszystkie 0ola user, password, host, database są poprawne. W swoim programie pola user_name i password wklepuję z klawy w czasie run-time.
Gdy pola te nie są poprawne program się wywala z komunikatem 'Project xxxx.exe raised exception class EDatabaseError with message 'dbExpress Error: Invalid Username/Password'' - w porządku, prawidłowe zachowanie.
I teraz - jak zrobić, żeby program się nie wywalał tylko dawał jakiś komunikat i pozwalał na kolejną próbe logowania się z innym polem user i password.
Zrobiłem coś takiego dla testu:
try
MySQLCon.Connected:=True;
except
raise exception.Create('Błąd');
end;
ale program i tak się wywala z wyżej wspomnianym komuniaktem i dopiero po tym (dając Trace Into w trybie dubbugowania) wywala mój exception 'Błąd' .
Jakieś sugestie?
Z góry dzięki