V databaze su data ulozene v tabulkach ako lego v skatuli. Otvorenim skatule vidime len legove casti usporiadane podla velkosti ci inych parametrov. Uspokojeniu nasich potrieb nestaci len otvorit skatulu a vykukovat sa po nejakych kockach, ale nasou potrebou je zo suciastok nieco zostrojit. Obdobne je to aj s datami v databaze.
Na skladanie dat resp. na manipulaciu s datami sa pouziva jazyk SQL. Nejake pociatocne info najdete napr. tu http://sk.wikipedia.org/wiki/SQL
Nechcem sa sustredit na teoriu ale na prakticku ukazku, preto sa tu nebudem rozpisovat.
Takze majme na MySQL serveri nainstalovanu databazu KNIZNICA a vnej nech mame vytvorenu tabulku KNIHY. Tabulku knihy si predstavte ako excelovsku tabulku v ktorej su ulozene v stlpcoch data. Kazdy stlpec ma nejaky nazov a je nejakeho typu podla druhu dat, ktore su v danom stlpci zapisane. Obdobne je to aj s tabulkami v relacnych databazach.
Ukazme si tu tabulku KNIHY:
id_knihy | nazov | autor | isbn |
1 | Pekny den | Jurko Hruska | 85544321 |
2 | Danka a Janka | Peto Banan | 12345678 |
3 | Romeo a biblia | Milka Ruckova | 87654321 |
Tak toto je surova sada dat ulozena na nejakom serveri niekde v Brazilii, ktore skusime nejako zobrazit vo vlastnej aplikacii doma.
Upozornenie: Na vytvorenie tohto prikladu je nutne mat nainstalovane komponenty ZEOS. Stiahnut si ich mozete napriklad tu: http://sourceforge.net/projects/zeoslib/
1. Vytvorime si novu aplikaciu
2. Na formular umiestnite komponenty TZConnection, TZQuery, TDataSource, TDBGrid
3. V komponente TZConnection nastavte nasledovne vlastnosti:
Protocol = 'mysql-5'
HostName = 'localhost'
Port = 3306
Database = 'kniznica'
User = 'root'
Password = 'admin'
Catalog = 'kniznica'
Name = 'DB'
4.V komponente TZQuery nastavte nasledovne vlastnosti
Connection = DB
SQL = select * from knihy;
5. V komponente TDataSource nastavte nasledovne vlastnosti
DataSet = ZQuery1
6. Do udalosti formulara OnCreate vlozte nasledovny kod:
procedure TForm1.FormCreate(Sender: TObject);
begin
DB.Connect;
ZQuery1.Open;
end;
7. Do udalosti formulara OnDestroy vlozte nasledovny kod:
procedure TForm1.FormDestroy(Sender: TObject);
begin
ZQuery1.Close;
DB.Disconnect;
end;
Po spusteni aplikacie uvidite data zo servera Mysql vo vlastnej aplikacii nejak takto:
Co nasa aplikacia robi:
1.Pri spusteni aplikacie sa vytvori spojenie so serverom MySQL a nasledne sa otvori komponenta ZQuery1, ktora poziada server o data. Poziadavka je v jazyku SQL a je to vlastne tento zapis select * from knihy; V ludskej reci by sme tento prikaz mohli povedat Potrebujem vsetky data z tabulky knihy.
2.Kedze komponenta DBGrid je spojena s komponentou ZQuery skrze komonentu Datasource1, komponenta DBGrid zobrazi data.
3. Pri zatvarani aplikacie sa uzavru spojenia.
Komentáre