Delphi - Oracle adatbázis-elérés alapjai

Oracle adatbázis-kezelés 1. rész

forráskód letöltése
Most induló cikksorozatunkban az adatbázis-kezelő alkalmazások piaci szegmensében igen erős irányvonalat képviselő Oracle adatbázisrendszer elérésének alapismereteit mutatjuk be. A sorozat végére átfogó képet kaphatunk a rendszer sajátosságairól, valamint megismerkedhetünk az SQL nyelv kiterjesztésének, a PL/SQL nyelvnek az alapjaival. Mostani cikkünkben bemutatásra kerül, hogy miként kapcsolódhatunk egy tetszőleges Oracle adatbázishoz, és hogyan jeleníthetjük meg adatainkat a Delphi eszközeivel.
A példaprogram használata előtt létre kell hozni egy SOUSER sémát az Oracle adatbázis-rendszerünkben, és fel kell ruházni DBA jogosultsággal. A sémába bejelentkezve le kell futtatni a mellékelt Oracle01.sql script-et a megfelelő objektum létrehozásához.
A cikksorozat nem tér ki külön az Oracle rendszer telepítésével kapcsolatos információkra, mivel a példák feltételezik, hogy számítógépünk rendelkezik egy lokális Oracle adatbázis-rendszerrel, vagy annak kliens-programjával elér egy létező rendszert.
Azok számára, akik még csak ismerkednek az Oracle használatával ismertetjük, hogy milyen módon lehet létrehozni példa-adatbázisunkat, és a rendszer beépített eszközeivel hogy tudjuk azt menedzselni. A cikksorozatban nem törekszünk arra, hogy az Oracle minden beépített eszközét referenciaszerűen bemutassuk, hiszen ezzel kapcsolatban számtalan irodalom látott már napvilágot. Cikkeinkben csupán a célnak megfelelően használjuk ezen segédprogramokat.
Az Oracle rendszerekben telepítéskor meg kell adni egy szervernevet, mely bekerül a szerverkollekcióba. Ha telepítés után ezt az egy szervert hoztuk létre, akkor ez lesz az alapértelmezett. Erre a névre csak a példa kedvéért van szükség, hiszen ha nem adjuk meg, akkor a rendszer úgyis ehhez próbál kapcsolódni először. A SOUSER felhasználó létrehozásához használhatjuk az Oracle rendszer DBA Studio nevű grafikus eszközét, amelyet a következőképpen indíthatunk el:
<rendszermeghajtó>:\oracle\ora81\bin\oemapp.bat dbastudio
Mi most egyszerűen a szerver menedzserprogramját használjuk. Ehhez indítsunk el egy command prompt-ot, majd gépeljük be a következő utasítást, hogy a program elinduljon:
<rendszermeghajtó>:\svrmgrl
A következő lépés, hogy kapcsolódunk az Oracle rendszerhez:
SVRMGR>connect internal;
Hozzuk létre a felhasználót, melynek neve és jelszava egyaránt souser lesz:
SVRMGR>CREATE USER souser IDENTIFIED BY souser;
Adjuk meg a megfelelő jogosultságot:
SVRMGR>GRANT DBA TO souser;
Jelentkezzünk be a létrehozott felhasználó nevében:
SVRMGR>connect souser/souser@szervernév;
Futtassuk le az Oracle01.sql script-et a következőképpen:
SVRMGR>@<állomány mappájának erelérési útja>Oracle01.sql;
Az adatbázisunkat így előkészítettük a munkához, most már alkalmazásunkkal elérhetjük azt. Az Oracle adatbázisok eléréséhez programjaink az ADO fülön található komponensgyűjteményt használják.
Az alkalmazás készítésének első lépéseként kapcsoljunk egy új Data Module-t a programhoz, majd dobjunk rá egy ADOConnection, egy ADODataSet és egy DataSource komponenst.
A példaprogram Form-ján elhelyezett mezőkben értelemszerűen meg kell adni a felhasználónevet és jelszót, melyet az előbb létrehoztunk és azt a szerver nevet, melyen létrehoztuk a felhasználót. A „Megnyitás” gombra kattintva a bejelentkezési folyamat megtörténik, és lefut egy SELECT parancs az Oracle01.sql script lefuttatásakor létrehozott Table1 táblára. Az eredmény megjelenik a DBGrid kontrolban.
A gomb lenyomásakor kap értéket az ADOConnection komponens ConnectionString property-je, valamint az ADODataSet komponens CommandText property-je:
DM.oraSet.ConnectionString := 'Provider=MSDAORA.1;Password=' + pwd.Text + ';User ID=' + login.Text + ';Data Source=' + server.Text + ';Persist Security Info=True';
DM.oraSet.CommandText := 'select * from Table1';
DM.oraSet.Active := true;

Oracle adatbázis-kezelés cikksorozat