Podłączenie się do bazy MySQL

0

Cześć,
Posiadam Delphi XE6, chcę połączyć się z bazą MySQL którą utworzyłem na serwerze. Próbuję wykorzystać komponent dbExpress TSQLConnection. Niestety po wpisaniu odpowiednich parametrów (host, nazwa serwera itp.) przy próbie podłączenia pojawia się błąd:

DBX Error: Drive could not by properly initialized. Client library may by missing, not installed properly, of the wrong version, or the driver may by missing from the system path.

Pobrałem libmysql.dll i wrzuciłem do katalogu z projektem, nie zadziałało. Jakiś pomysł naprawy?

0

Jak masz XE6 to użyj do połączenia z bazą FireDac-a http://docwiki.embarcadero.com/RADStudio/XE6/en/Connect_to_MySQL_Server_(FireDAC)

0

TFDPhysMySQLDriverLink mam wyszarzone i nie mogę dodać na formę, co może być przyczyną? Trzeba pobrać jakiś pakiet uzupełniający?

0
  1. jak wersja delphi
  2. a inne sterowniki do baz są aktywne?
0
  1. Trochę nie rozumiem, to że XE6 napisałem, co jeszcze?
  2. Hmm, może doprecyzuję, chodzi o aplikację mobilną. Wtedy te komponenty się wyszarzają. Czy zna ktoś sposób dla aplikacji mobilnej, szczególnie Android?
1

no widzisz jak ty mało wiesz - https://www.embarcadero.com/products/delphi/product-editions
nie ma jak najważniejszą informację pominąć... Z urządzeń mobilnych nie praktykuje się połączenia bezpośrednio do zdalnych baz danych. Co więcej android nie ma klienta do mysqla więc tak to się nie uda. Należy postawić np. REST server i z androida łączyć się z nim a on z bazą

0

Jak chcesz łaczyć się do bazy z urządzenia mobilnego to pozostaje UniDac https://www.devart.com/unidac/compatibility.html
Natomiast faktycznie jak napisał kolega abrakadaber, najprościej postawić usługę REST.

0

Oczywiście może być UniDAC. Może być i REST.
Ale najszybciej, najłatwiej i najtaniej będzie użyć mORMota:
http://blog.synopse.info/post/2014/11/18/HTTP-remote-access-for-SynDB-SQL-execution
Czyli dedykowana usługa REST do obsługi... SQL ;-)

Kilka linii kodu i wszystko biega jak ta lala. Zwłaszcza, że można się komunikować jak ze zwykłą bazą danych - nawet TDataSet jest po stronie klienta.
Tylko w XE6 to trochę nie w tę stronę z TDataSet. Skoro jest LiveBinding, to lepiej obiekty. A skoro obiekty, to lepiej użyć ORMa...
OK, ale to już za daleko, skoro pytacz nie ma pojęcia o podstawach to temat go niestety przerasta...

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