23
Adatbáziskezelés Delphi 5 alatt Bese Antal 2006. http://toni.web.elte.hu/delphi

Adatbáziskezelés Delphi 5 alatt

  • Upload
    yuval

  • View
    45

  • Download
    0

Embed Size (px)

DESCRIPTION

Bese Antal 2006. http://toni.web.elte.hu/delphi. Adatbáziskezelés Delphi 5 alatt. 1. Bevezetés. Számítógépes adattárolás fájlokban . Az egész adatbázist egy fájlban (Pl.: Access, Interbase ,és a legtöbb SQL adatkiszolgáló) - PowerPoint PPT Presentation

Citation preview

Page 1: Adatbáziskezelés Delphi 5 alatt

Adatbáziskezelés Delphi 5 alatt

Bese Antal 2006.http://toni.web.elte.hu/delphi

Page 2: Adatbáziskezelés Delphi 5 alatt

1. Bevezetés

Számítógépes adattárolás fájlokban.

Az egész adatbázist egy fájlban (Pl.: Access, Interbase,és a legtöbb SQL adatkiszolgáló)

Az adatbázis felbontva táblákra, indexekre, ... (Pl.: Paradox, dBase)

adatbázis könyvtárak táblák fájlok

Page 3: Adatbáziskezelés Delphi 5 alatt

Bevezetés folyt.

A Delphi adatbázis-alkalmazások nem közvetlenül kommunikálnak az adatbázisokkal, hanem valamilyen adatbázismotoron keresztül érik el az adatbázist. Delphi alatt a

Borland Database Engine (BDE), és a

Microsoft ActiveX Data Objects (ADO) használata terjedt el.

Page 4: Adatbáziskezelés Delphi 5 alatt

2. BDE (Borland Database Engine)

Számos adatforrást kezel, elérésüket közvetlen módon valósítja meg.

pl. dBase, FoxPro, Access, ...

Kapcsolatot tud létesíteni olyan adatbázis-kiszolgálókkal, mint az Oracle, DB2, Sybase, sőt kapcsolatba tud lépni ODBC meghajtókkal is (ekkor inkább az ADO-t használjuk).

Kifinomult cache-kezelés, stb..

Page 5: Adatbáziskezelés Delphi 5 alatt

3. Ado (Microsoft ActiveX Data Objets)

Microsoft fejlesztés...

A MS OLE Db adatelérési technológián alapul, amely elérést biztosít relációs és nem-relációs adatbázisokhoz, levelezési és fájlrendszerekhez, és egyedi üzleti objektumokhoz.

Nem igényli a BDE könyvtárait, de szükségesek hozzá az ADO/OLE DB futás idejű csomagjai (Windows 2000-től felfelé).

Page 6: Adatbáziskezelés Delphi 5 alatt

4. Hordozhatóság

Ha a BDE-megközelítést választjuk az adatbázis eléréséhez, akkor mindenkféleképpen telepítenünk kell a már megírt adatbázis-kezelő alkalmazásunk mellé a BDE-t is.

Éppen ezért érdemes valamilyen telepítés-előkészítő programot használnunk (Pl.: InstallShield, Inno Setup, ...).

Page 7: Adatbáziskezelés Delphi 5 alatt

Hordozhatóság folyt.

Ezek a programok könnyen konfigurálhatóak,

segítségükkel a felhasználó zökkenőmentesen telepítheti a BDE-t

A Delphi különféle licenszei foglalkoznaka BDE terjeszthetőségével - "elvileg" szabadon terjeszthető).

Az ADO ehhez képest nem igényel semmilyen új telepítést.

Page 8: Adatbáziskezelés Delphi 5 alatt

5. Az adatbázis létrehozása

Az adatbázis létrehozásának legegyszerűbb módja a Delphi 5-el szállított Database Desktop utility használata.

Első lépésként egy alias (másodlagos) nevet kell létrehoznunk, ami egy elérési utat jelent

Második lépésként pedig az adatbázisunkhoz tartozó táblákat kell megkonstruálnunk.

Page 9: Adatbáziskezelés Delphi 5 alatt

6. A Delphi adatbázis-komponensei

A komponenspaletta Data Acces (Adatelérés) lapján találhatóak azok az összetevők, amelyekkel a BDE-központú adatbázisokat használhatjuk.

Legtöbbjük nem látható komponens (adatkapcsolatok, táblák, lekérdezések, ...).

Az adatok megjelenítésére szolgáló komponenseket a Data Controls lapon találjuk.

Page 10: Adatbáziskezelés Delphi 5 alatt

7. Adatelérés a Delphiben

Az adatbázis eléréséhez mindenféleképpen szükségünk van egy adatforrásra, melyet a DataSource kompomenssel adhatunk meg.

A DataSource nem közvetlenül az adatbázisra, hanem egy DataSet (Adatkészlet) nevű komponensre hivatkozik

(pl. egy tábla, lekérdezés, tárolt eljárás, … , ADO, InterBase vagy más egyéni adatkészlet).

Page 11: Adatbáziskezelés Delphi 5 alatt

8. Megvalósítás

Amint elhelyeztünk egy adatkészletet a formon, a DataSource komponens DataSet tulajdonságával hivatkozhatunk rá. Segítség: az Object Inspector megadja az elérhető adatkészletek listáját.

Page 12: Adatbáziskezelés Delphi 5 alatt

9. A „Table” komponens

Az egyik legegyszerűbb módszer, hogy egy már meglévő adattáblánk tartalmát elérjük. A komponens DatabaseName tulajdonságával kapcsolhatjuk össze az adatbázisunkkal.Egy elérési utat, vagy egy fiktív alias nevet (másodnév) kell megadnunkAz elérhető adatbázisokat szintén megjeleníti az Object Inspector.A TableName tulajdonságban adhatjuk meg a megjeleníteni kívánt adattábla nevét.

Page 13: Adatbáziskezelés Delphi 5 alatt

10. A „Query” komponens

Nagyon hasonló a Table-höz

Az SQL nyelven alapuló lekérdezések megvalósításra használhatjuk.

A Table komponenssel ellentétben, csak a Database tulajdonságát kell állítanunk

(a Tablename tulajdonságnak itt nem is lenne értelme).

Page 14: Adatbáziskezelés Delphi 5 alatt

11. Lekérdezések használata - a Query komponens

A lekérdezést a Query komponens Sql tulajdonságában tudjuk definiálni. Query1.Sql.Add('SELECT * FROM tabla;');

A beírt lekérdezést letörölhetjük:Query1.Clear;

Lekérdezés lefuttatásaQuery1.Open;

Lekérdezés lezárásaQuery1.Close;

Page 15: Adatbáziskezelés Delphi 5 alatt

12. Az adatkészlet

Az adatkészletünknek többféle állapotai lehetnek, attól függően, hogy éppen milyen műveletet hajt(ott)unk rajta végre. Az éppen aktuálisat a State tulajdonság jelöli, érdekesebb példák:dsBrowse - az adatkészlet normál böngésző

üzemmódban van,dsEdit - az adatkészelt szerkesztő

üzemmódban van,dsInsert - új rekordot készülünk beszúrni (pl. az

insert metódussal),dsInactive - az adatkészlet le van zárva.

Page 16: Adatbáziskezelés Delphi 5 alatt

13. Összefoglalás - adatok elérése

Adatbázis létrehozásaTervezési időben

Futási időben

Adatforrás összekapcsolása az adatbázissal DataSource DataSetAdatbázis komponensek Databasename + Tablename

Page 17: Adatbáziskezelés Delphi 5 alatt

14. Adatok megjelenítése

A megszokott Windows-os adatkezelő komponensek nagy részének létezik olyan megfelelője, mely valamilyen módon kapcsolatban áll egy adatbázissal.Érdemes áttanulmányozni a komponenspaletta Data Controls (Adatvezérlők) lapját.

Ezeket a komponenseket találhatjuk ott: DBGrid, DBNavigator, DBText, DBEdit, DBMemo, DBImage, DBListBox, DBComboBox, DBCheckBox, DBRadioGroup, DBRichEdit,DBCtrlGrid, DBChart.

Page 18: Adatbáziskezelés Delphi 5 alatt

Adatok megjelenítése folyt.

Egy új vezérlő elem.

DBNavigator - egy olyan gombgyűjtemény, amellyel könnyen mozoghatunk az adataink között, és adhatunk ki rájuk vonatkozó utasításokat (szerkesztés - edit, mentés - post, stb).

Page 19: Adatbáziskezelés Delphi 5 alatt

15. Adatmezők elérése

Field komponens (TField osztály egy példánya)a Delphi a adatfüggő vezérlői közvetlenül az adatbázis mezőire vonatkozó Field obejktumokhoz kapcsolódnak.Amikor adatkészletet nyitunk meg, akkor a Delphi automatikusan létrehozza őket már futási időben.A táblák és lekérdezések ezeket a mezőket a Fields tulajdonságban tárolják (lényegében egy tömbben).

Page 20: Adatbáziskezelés Delphi 5 alatt

Adatmezők elérése folyt.

Pl. az elérésre:

Table1.Fields[0].AsString Table1.FieldByName('mezo_neve').AsStringTable1.['mezo_neve'].AsString

Page 21: Adatbáziskezelés Delphi 5 alatt

16. Tervezési tipp - az Adatmodul használata

Eddig egy adatbáziskezelő program fejlesztése során az adatelérési és adatfüggő vezérlőket is felpakoltuk a formra.

Ez egy egyszerű program esetén elég, DE egy összetettebb/bonyolultabb feladatnál nagyon bonyolítja a dolgunkat (konzisztens tárolás, ...)

Ötlet: a nem látható vezérlőket tegyük egy tárolóba - adatmodul (TDataModul osztály).

Page 22: Adatbáziskezelés Delphi 5 alatt

Tervezési tipp - az Adatmodul használata folyt.

Csak tervezési időben létezik.

Fő felhasználási területe - adatelérési komponensek több form közötti megosztása.

Létezik egy ún. adatdiagram nézete, ahol alapvető UML-elemekkel találkozhatunk.

Page 23: Adatbáziskezelés Delphi 5 alatt

vége.