Gyakorlati alapok III.

SQL (adatbázis)

 

A phpMyAdmin

 

Az oldal eléréséhez mindenekelőtt be kell indítanunk a XAMPP webszerver és SQL-szerver részét!

 

www.informatika-programozas.hu - Java + SQL (adatbázis)></p>



  <p lang=

 

A phpMyAdmin az adatbázis-szerver adminisztrációs felülete, amely a localhost-on, számítógépünk mindenkori belső hálózati címén érhető el (127.0.0.1). Ebből következően a felület éppúgy elérhető a localhost névről (ezt a böngésző címsorába írjuk)…

 

www.informatika-programozas.hu - Java + SQL (adatbázis)></p>



  <p lang= www.informatika-programozas.hu - Java + SQL (adatbázis)></p>



  <p lang=

 

...mint a már említett IP-címről (127.0.0.1 - ezt szintén a böngésző címsorába írjuk):

 

www.informatika-programozas.hu - Java + SQL (adatbázis)></p>



  <p lang= www.informatika-programozas.hu - Java + SQL (adatbázis)></p>



  <p lang=

 

A fejlécben található linkek közül nyilvánvalóan a legfontosabb a phpMyAdmin, amely az adatbázis-szerver adminisztrációs felületére irányít át minket:

 

www.informatika-programozas.hu - Java + SQL (adatbázis)></p>



  <p lang=

 

A jelen fejezetnek nem célja a phpMyAdmin összes funkciójának ismertetése, csupán amennyi a Java-programok hatékony, adatbázishoz kapcsolt futtatásához szükséges! Ettől függetlenül -mivel rengeteg további, kényelmi funkcióval rendelkezik-, érdemes felületét mélyebben is áttanulmányoznunk.


Bár a fejezetcsomag elsődleges célja a Java és SQL közti kapcsolatok bemutatása, legelső adatbázisunkat mégsem a Java-rendszeren, hanem a itt, phpMyAdmin-on keresztül hozzuk létre, hogy alapszinten megismerhessük működését.


A felület bal oldalán már létező, a rendszert működtető és egyéb adatbázisok listáját tanulmányozhatjuk, de ugyanezt a listát kapjuk meg, ha a fenti, Adatbázisok feliratú fülre kattintunk. Az alábbi képen már mindkét opciót láthatjuk:

 

www.informatika-programozas.hu - Java + SQL (adatbázis)></p>



  <p lang=

 

Először tekintsük meg minta-adatbázisunk (auto) első, reprezentatív tábláját (auto_csop). A tábla kölcsönözhető autók csoportosítását és a hozzá tartozó kilométer-, és kölcsönzési napidíjait tartalmazza:

A táblának konkrét értékei, rekordjai is vannak, amelyeket szintén később töltünk fel:

 

AUTO_CSOP

auto_csop_nev

km_dij

napi_dij

NORMAL

80

5000

EXTRA

120

7500

LUXUS

300

15000

 

1. feladatunk tehát az auto adatbázis létrehozása, ezt kétféleképpen is meg tudjuk tenni (amint ezt majd más esetekben is megtehetjük):

SQL-parancs

Kattintsunk az SQL-fülre, amelynek hatására a következő felület jelenik meg:

 

www.informatika-programozas.hu - Java + SQL (adatbázis)></py



  <p lang=

 

Írjuk be ide:

 

CREATE DATABASE auto;

 

...majd kattintsunk az SQL-felület jobb alsó részén lévő Indítás gombra.

 

www.informatika-programozas.hu - Ezt most meg kell tanulni!

 

Majd tapasztaljuk: a felület annyira intelligens, hogy felismeri az SQL-parancsokat és javaslatokat dob fel nekünk. Ezeket -ha értelmük a mi szándékainkkal azonosak-, nyugodtan elfogadhatjuk, legalább nem vétünk szintaktikai hibákat.

 

Javaslat: szöveget ne másoljunk külső szövegből az SQL-felületre, mert nem látható, járulékos információk lehetnek benne, amelyet az SQL-értelmező nem lesz képes feldolgozni! (Ennek ellenére ez nekem speciel HTML-kódból működött.)

 

Az Indítás gomb hatására létrejön az auto nevű adatbázis, amely bal oldalon a többi adatbázis közé kerül.

 

www.informatika-programozas.hu - Java + SQL (adatbázis)></p>



  <p lang=  

Az adatbázist a következő SQL-paranccsal tudjuk törölni:

 

DROP DATABASE auto;

 

Adminisztrációs felület

Kattintsunk bal oldalon lévő legfelső, Új gombra, hatására egy adatbázis létrehozó felület ugrik fel:

 

www.informatika-programozas.hu - Java + SQL (adatbázis)></p>



  <p lang=

 

Itt állítsuk be az adatbázis nevét (auto), kódolása ascii_general_ci formátum legyen, majd nyomjunk meg a Létrehozás gombot. Hatása azonos lesz a fenti SQL-utasítással:

 

www.informatika-programozas.hu - Java + SQL (adatbázis)></p>



  <p lang=

 

www.informatika-programozas.hu - Ezt most meg kell tanulni!

 

Az ascii_general_ci karakterkódolás egyszerű, de megbízható karaktermegjelenítést tesz lehetővé. Ha ugyanis bármilyen karakterkódolási ütközés lép fel a Java-, és SQL-platformok között (aminek nagy a valószínűsége), akkor az értelmezhetetlen, vagy nem megfelelő karaktereket fog eredményezni. Ügyeljünk erre minden egyes szöveg formátumú oszlop létrehozásakor!

 

2. feladatként létre kell hoznunk az auto adatbázison belül egy auto_csop nevű táblát. Ezt is kétféleképpen tehetjük meg, SQL-paranccsal, vagy az adminisztrációs felületen. Ha ismerjük az SQL-nyelvet, ezt sokkal könnyebb megtennünk SQL-utasításokon keresztül. A parancs beviteléhez először kattintsunk az auto adatbázisra, majd szerkezeti nézet helyett (Szerkezet) váltsunk SQL-nézetre (SQL). Itt gépeljük be a következőket:

 

CREATE TABLE `AUTO`.`AUTO_CSOP` ( `auto_csop_nev` VARCHAR(6) NOT NULL , `km_dij` INT(4) NOT NULL , `napi_dij` INT(8) NOT NULL ) ENGINE = InnoDB;

 

Az Indítás gomb hatására létrejött az auto_csop tábla és benne 3 oszlop:

www.informatika-programozas.hu - Java + SQL (adatbázis)></p>



  <p lang=

 

A táblát törölhetjük a következő utasítással...

 

DROP table auto_csop;

 

...de kézzel is az Eldobás gomb megnyomásával:

 

www.informatika-programozas.hu - Java + SQL (adatbázis)></p>



  <p lang=

 

Természetesen a 3 oszlopos táblát létrehozhatjuk kézi megoldással is. Először hozzuk létre az auto_csop táblát 3 oszloppal...

 

www.informatika-programozas.hu - Java + SQL (adatbázis)></p>



  <p lang=

 

...majd töltsük ki a mezőket a következőket szerint:

 

www.informatika-programozas.hu - Java + SQL (adatbázis)></p>



  <p lang=

 

Érdekes opció a jobb alul lévő SQL előnézet gomb, ahol voltaképpen kézi beállításaink fordulnak le még mentés előtti SQL-utasításokba:

 

www.informatika-programozas.hu - Java + SQL (adatbázis)></p>



  <p lang=

 

3. feladatként fel kell töltenünk az auto_csop nevű táblát konkrét értékekkel, rekordokkal, ennek előnézetét már láttuk fentebb:

 

AUTO_CSOP

auto_csop_nev

km_dij

napi_dij

NORMAL

80

5000

EXTRA

120

7500

LUXUS

300

15000

 

Ezt szintén kétféleképpen tehetjük meg, SQL-paranccsal, vagy az adminisztrációs felületen. Ha ismerjük az SQL-nyelvet, ezt sokkal könnyebb megtennünk SQL-utasításokon keresztül. A parancs beviteléhez először kattintsunk az auto adatbázis auto_csop nevű táblájára, majd szerkezeti nézet helyett (Szerkezet) váltsunk SQL-nézetre (SQL). Itt gépeljük be a következőket:

 

INSERT INTO AUTO_CSOP values ('NORMAL','80','5000');
INSERT INTO AUTO_CSOP values ('EXTRA','120','7500');
INSERT INTO AUTO_CSOP values ('LUXUS','300','15000');

 

Az SQL-inzertálás hatására az oszlopok értékekkel lettek feltöltve (bal oldalon, középen):

 

www.informatika-programozas.hu - Java + SQL (adatbázis)></p>



  <p lang=

 

Mindezt soronként, kézzel, az adminisztrációs felületen keresztül is megtehetjük, ha a Beszúrás fülre kattintunk, a sor értékeit kitöltjük, majd a feltöltést az Indítás gombbal jóváhagyjuk:

 

www.informatika-programozas.hu - Java + SQL (adatbázis)></p>



  <p lang=

 

Érdekességképpen a fenti beszúrás SQL-utasítása:

 

INSERT INTO `auto_csop` (`auto_csop_nev`, `km_dij`, `napi_dij`) VALUES ('NORMAL', '80', '5000');

 

www.informatika-programozas.hu - Java + SQL (adatbázis)

 

A fenti műveletekkel létrehoztunk 1 adatbázist, annak 1 tábláját és feltöltöttük azt konkrét értékekkel. Szerveroldalon ennyi már elégséges ahhoz, hogy a "másik", a Java oldaláról megpróbáljunk ide felcsatlakozni, hogy a Java és SQL közti rutinokat megvizsgáljuk. Ezen célból lapozzunk a következő fejezethez.