Czy istnieje możliwość wykorzystania normalnej bazy internetowej MySQL na serwerze UNIX-owym w aplikacji napisanej w Delphi, tzn.
chciałbym mieć pełny dostęp do bazy, która zwykle jest wykorzystywana na stronie intaernetowej?
Moim zdaniem się da. Jak zwykle polecam komponenty Zeos.
Jak zwykle polecam komponenty Zeos.
Czy te komponenty sa tylko dla Linux'a?
Nie, one ogólnie są do MySQLa.
Własnie brnę przez Delphi + MySql więc się podzielę a może ktoś mi coś doradzi przy okazji.
Code to tak, żeby ładnie wyglądała struktura.
[code]
SQLConnection - musi być jakieś połączenie z bazą,
|
+SQLDataSet - typu table, query, stored proc wedle zyczenia
|
+DataSetProvider - udaje serwer baz danych
|
+ClientDataSet - udaje klienta
|
+DataSource - nasze źrodło danych
|
+DBGrid - tu widać naszą tabelę
+DBNavigator - tu możemy po niej nawigować
[/code]
komponenty pochodzą z zakładek dBExpress DataControl i DataAccess delphi 7 taka struktura pozwala na wyświetlenie tabeli MySqlowej w aplikacji, miałem spore kłopoty z umożliwieniem edycji ale udało mi się to zrobic tak:
komponent ClientDataSet na zdarzeniu BeforeRefresh otrzymuje procedurę:
procedure TMainForm.updejt(ds: TDataset);
begin
ClientDataSet1.ApplyUpdates(-1);
end;
no i to chyba juz komplet do edycji tabel mysqlowych z delphi
DISCLAIMER :)
Jestem jeszcze strasznym laikiem i ucze się delphi dość intuicyjnie, literature nabywam w miarę posiadania finansów. Jeżeli coś tu poknociłem albo robię naokoło to czekam na uwagi. Bardzo dużo szukałem w necie i wszędzie cisza na temat podpinania aplikacji delphi do baz MySqlowych wiec opisałem po krótce to co udało mi się zrobić.
(podziękowania dla Furgasa)
Z tego co mi się wydaje to do prostych operacji wystarczy connection i query, reszta to tylko konwersja na wewnętrzny standard bazodanowy, żeby dało się grida używać i wykresy podpinać.
ZNANE BŁĘDY:
brak biblioteki libmysql.dll w katalogu programu
delphi 7 proponuje standardowo błędna nazwę biblioteki, komponent SQLConnection/LibraryName ma być dbexpmysql.dll a często jest jakoś inaczej
i kolejne plusy na rzecz tradycyjnych komponentow a nie jakiegos zeosa :>
dbExpress sa dostepne dla platwormy delphi jak i kylix wiec 0 problemu stworzyc program do obslugi bazy danych MySQL dla windows czy dla linux'a:-)
Zeos też jest dostępny dla Kylixa, a poza tym ma tą poważną zaletę, że jest darmowy, i nie trzeba kupować Delphi X Enterprise, żeby mieć komponenty bazodanowe, tylko kupujesz Professionala i instalujesz Zeosa. Jaka to oszczędność to chyba nie muszę wyjaśniać...
wiem ze to jest oszczednosc... ale sam widzisz ze co chwile ktos placze ze ma problem z zeosem.. nie wiem czy to wynika z "plytkosci" tego komponentu czy po prostu z braku wiedzy na jego temat... nie wnikam juz. EOT
nom, zalozylem usera bo tu ciekawie :) (to ja Rybik :) )
Do całego łańcucha dołożyłem jeszcze małą procedurę zamykającą połączenie jezeli otwarte naOnClose i ogólnie całość hula, nie bardzo jeszcze orientuje się w komponentach bazodanowych ale z tego co widze to jedynie connection może być elementem stałym a całą ścieżkę dalszą trzeba powtarzać dla kazdego zestawu danych jaki chcemy obrabiac w trybie pelnej edycji.
Tylko ze w Zeosie sa dema i na nich mozna sie duzo nauczyc jak ktos ma problemy jak i przerobic na swoje potrzeby.
POdstawowe umiejetnosci to : Ctrl +C, Ctrl+V i troche tam...
:-)
POza tym niedawno byly posty i konkretne pytania jak i co nalezy zrobic aby cos ciekawego uzyskac, poszukaj sobie.
powodzenia
POdstawowe umiejetnosci to : Ctrl +C, Ctrl+V i troche tam...
Myślisz, że jak ja się uczyłem programowania :]. Stare dobre czasy... (juz tego nie praktykuje, zeby ktos nie myślał :-P )