Adatbáziskezelés Delphi 5 alatt

Preview:

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

Adatbáziskezelés Delphi 5 alatt

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

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

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.

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..

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é).

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, ...).

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.

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.

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.

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).

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.

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.

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).

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;

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.

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

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.

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).

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).

Adatmezők elérése folyt.

Pl. az elérésre:

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

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).

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.

vége.

Recommended