Title: Delphi programoz
1Delphi programozás alapjai
- Nagyváradi Anett
- anettn_at_morpheus.pte.hu
- http//morpheus.pte.hu/anettn
- PTE PMMK MIT
24. ELOADÁS
- Adatbázis kezelés Delphiben
3Adatbázis kezelo alkalmazás
- Funkciók
- adatkezelés tárolt adatok fizikai
feldolgozását végzi (állomány nyitása,zárása
adatok törlése, módosítása lekérdezések
futtatása stb.) - alkalmazás logika helyes muködés biztosítása
(adatvédelem hatékonyság, integritás stb.) - felhasználói felület felhasználóval való
közvetlen kapcsolat (felhasználóbarát tetszetos
felület stb.) - Megjegyzés
- maga az adatbázis (adatok) nem az alkalmazás
része
4Adatbázis kezelési architektúrák
- Az alkalmazás három része fizikailag is
elkülönülhet (külön gépek) - Fájl-szerver
- mindhárom rész egyetlen gépen helyezkedik el
(egyrétegu technika) - Hátránya, hogy több-felhasználós munka esetén az
adatátvitel leterheli hálózatot és a közös
eroforrásokat teljes adatbázis mozgatása - Kliens-szerver
- adattárolás központi gépen, kliens gépen a
felhasználói felület és az alkalmazás logika
adatbázisba be nem épített része (kétrétegu
technika) - Nem a feldolgozandó adatok, csak a parancs
eredménye megy a hálózaton átviteli
teljesítmény javul - Több rétegu
- az alkalmazás részei kettonél is több gépen
helyezkednek el - Kliens oldalon már csak a felhasználói felület
található meg
5Delphibol elérheto adatbázisok
- Paradox (.DB)
- dBase, Foxpro (.DBF)
- Access (.MDB)
- DB
- InterBase
- MS SQL
- Oracle
- SYSBASE
- Informix
6Adatbázis kezelés Delphiben
- Adatbázisok kezelése speciális komponensekkel
történik - Különbözo adatbázisok egységesen adott
komponensekkel érhetok el - A beépített osztálygyujtemény IDAPI (Integrated
Database Application Programming Interface) - A komponensek metódusai a beépített adatbázis
motor rutinjait használják BDE (Borland
Database Engine) - A közvetlen adatelérést a BDE látja el specifikus
driverek sgítségével - pl. Paradox táblák esetén IDPX32.DLL meghajtó
szükséges - Egyes meghajtókat a Delphi tartalmazza (natív
meghajtók), pl. Paradox-ét
7Adatbázis kezelés Delphiben 2
- Adatfeldolgozó parancsok szabványos nyelve SQL
(Structured Query Language) - SQL utasítások eloállítását a BDE végzi az SQL
Links drivercsomag segítségével - Megjegyzés
- Egy adatbázisos alkalmazást feltelepíthetünk egy
Delphi nélküli gépre. Ekkor a BDE használt részét
is fel kell telepítenünk az alkalmazás mellé. - A szükséges állományok összeállításában
telepíto-program készíto alkalmazások állnak
rendelkezésre - (pl. InstallShield Express)
8Segédprogramok
- DataBase Desktop - helyi állományok kekzelésére
- BDE Admnistrator az atbázismotor konfigurációs
programja - Database Explorer
- Data Migration Wizard adatáthelyezés, metaadat
- SQL Monitor SQL lekérdezések nyomkövetésére
- Server Manager InterBase DB-szever karbantartó
programja - Window ISQL InterBase DB-ok kezelésére
9Alias - álnevek
- Fejlesztés közben az adatok egy konkrét elérési
útvonalon találhatóak - exe állományban erre hivatkozunk
- Átvive az alkalmazást egy másik gépre régi
helyén keresné az adatokat HIBA - Megoldás újrafordítani a programot a módosított
elérési útvonallal - nem túl jó megoldás
- Jó megoldás álnevek- Alias-ok használata
- Alias
- tartalmazza az adatok elhelyezkedésére és
formátumára vonatkozó infókat - lefordítva a programot, az exe állományban csak
az aliasra találunk hivatkozást így az új gépen
elég az álnevet átállítani az új elérési
útvonalra - ezt a feladatot a telepítoprogram látja el
10Adatbázis kezelési komponensek
- Adatelérési komponensek (Data Accsess)
- DataSource
-
- BDE komponensek (BDE)
- TDataBase adatbázisok
- TTable táblák
- TQuery lekérdezések
-
- Adatmegjelenítési komponensek (Data Controls)
- adathozzáférési komponensekhez kapcsolódnak
- Pl. TDBEdit, TDBText, TDBGrid, TDBImage, stb.
11DataModule
- Adatelérési és BDE komponensek
- elhelyezése (lehetséges az aktuális
- formon is), de célszeru azokat az
- úgynevezett adatmodulon
- csoportosítani.
- File gt New gt DataModule
- Az adatmodul külön ablakként jelenik meg, mely
futás közben láthatatlan. - Így elkülönítheto a felhasználói felület és az
adatelérési logika. - Megjegyzés ajánlott a datamodult a formok elott
auto-create létrehozni
12BDE komponensek
- TDataBase adatbázis
- egy konkrét adatbázis elérését biztosítja
- jellemzok
- AliasName álnév
- DatabaseName adatbázis neve
- Connected csatlakozás
- Name hivatkozási neve
- TTable táblák
- Fizikai tábla adatainak elérésére
- Jellemzok
- DatabaseName álnév vagy adatbáziskomponens
- TableName listából kiválasztható a kívánt tábla
- Active megnyitás
- ReadOnly csak olvasható
- IndexField, IndexFieldName adatok rendezettség
- sorrendjét állítja
13Adatelérési komponensek
- TDataSource adatforrás komponens
- Adatok megjelenítését teszi lehetové
- Az adatelérési komponenseket összekapcsolja az
adatmegjelenítési komponensekkel - Adathalmaz megjelenítése megjelenítendo elemeket
az adatforráshoz kell kapcsolni, majd az urlapot
rá kell irányítani erre a forrásra - Jellemzoi
- DataSet továbbítandó adat-
- halmaz neve
- AutoEdit boolean, ha értéke
- igaz, akkor az adathalmaz
- editálható hibaforrás lehet,
- célszeru letiltani
14Adatmegjelenítési komponensek
- Beállítandó tulajdonságok
- DataSource adatforrás, ahonnét veszi az
adatokat - DataField listából kiválasztható, hogy a forrás
melyik mezojét jelenítse meg - Pl.
- TDBEdit
- TDBText
- TDBGrid
- TDBNavigator
- TDBImage
15Ellenorzés
Mindig vizsgáljuk meg az Object Inspector
tartalmát, hogy megfeleloen kapcsoltuk-e össze a
komponenseket! (piros kérdojelek jelzik a hibát)
16DataBase Desktop
- Nyissuk meg a segédprogramot a Delphi
könyvtárából! - Tools gt Database Desktop
- Lehetoség nyílik
- Alias definiálására
- Táblák létrehozására
- Táblák feltöltésére
- SQL lekérdezések programozására
- SQL lekérdezések tesztelésére
- Stb.
- Állítsuk be a megfelelo útvonalakat az egyszeru
felhasználás céljából - File gt Working Directory
- File gt Private Directory
17DataBase Desktop - táblakészítés
File gt New gt Table Segítségével hozzunk létre egy
Paradox 7 típusú táblát, majd definiáljuk a
mezoket és tulajdonságaikat! FieldName
lehetoleg ékezet nélkül Type menüsorból
kiválasztható típusok (jobbegér) Size szöveges
mezonél értéket kell adni a mezo hosszára Key
dupla klikk a mezon, csillaggal megjelölheto
kulcsmezo
18DataBase Desktop tábla feltöltés
- Az elmentett tábla tartalmát feltölthetjük table
gt edit data - Egyszerre több táblát is megjeleníthetünk,
egyesével szerkeszthetjük.
19DataBase Desktop alias készítés
- Tools gt Alias Manager
- Menüponttal létrehozhatjuk a saját adatbázisunk
álnevét. - New gombra kattintva, a Path-t megadva és a
Database Alias nevet (beszédes név) kitöltve
létrejön a megfelelo alias.
20Feladat
- Nézzük meg, hogyan muködik a DataBase Desktop
rendszer. - Hozzunk létre egy Paradox 7 típusú adatbázis, egy
táblával, töltsük is fel próbaadatokkal. - Hozzunk létre egy egyszeru Delphi alkalmazást,
mely alkalmas az adatbázisunk menedzselésére - Adatokat jeleníthetünk meg, módosíthatunk, stb.