
A felhasználói adatokhoz csak akkor férhetünk hozzá, ha megfelelő jogosultságokkal rendelkezünk.
Az Oracle szerveren a SYSTEM Tablespace alatt számos adattábla található, amely a rendszer paramétereiről tartalmaz információkat.
A felhasználók nevét és főbb jellemzőit a SYS.USER$ tábla tartalmazza. A kialakított Tablespace-ek információit a SYS.TS$ táblában találjuk. A két tábla között kapcsolatot létesíthetünk a megfelelő mezők alapján.
A SYS.USER$ táblából 3 mezőre van szükségünk, ezek a következők:
| Mező |
Jelentése |
| NAME |
A felhasználó neve. |
| DATATS# |
Default Tablespace. Itt egy számérték található, amely a TS$ tábla egy sorára mutat. |
| TEMPTS# |
Temporary Tablespace. Itt egy számérték található, amely a TS$ tábla egy sorára mutat. |
A SYS.TS$ táblából két mezőre van szükségünk.
| Mező |
Jelentése |
| TS# |
Rekordazonosító. Ez alapján kapcsolhatjuk hozzá a táblát a SYS.USER$ táblához. |
| NAME |
A Tablespace neve. |
Az Oracle szerverhez egy TADOConnection objektum segítségével kapcsolódunk. A kapcsolatot futási időben hozzuk létre, a megadott adatbázis, felhasználónév és jelszó függvényében.
ADOConnection1.ConnectionString:='Provider=OraOLEDB.Oracle.1;Persist Security Info=False;User ID='+
Edit2.Text+';'+'Data Source='+Edit1.Text;
A kapcsolódáshoz szükséges felhasználónevet és jelszót az ADOConnection1 objektum OnWillConnect eseményében adjuk meg. A LoginPrompt property értékét ne felejtsük el hamisra állítani.
A SYS.USER$ és SYS.TS$ táblákhoz egy-egy ADOTable komponenssel csatlakozunk. (SYS.USER$ - ADOTable1, SYS.TS$ - ADOTable2)
A szükséges mezők beállításához célszerű a szerverhez szerkesztési időben, ideiglenesen kapcsolódnunk. Ha felépítjük a kapcsolatot, az ADOTable komponensek TableName property-jében megjelennek a táblák nevei. A bejelentkezési nevünktől függ, hogy alapértelmezés szerint mit látunk. A táblák neveit manuálisan írjuk be, SYS.USER$ és SYS.TS$ formában.
A SYS.USER$ táblában a következő adatmezőkre van szükség: NAME, DATATS#, TEMPTS#.
A SYS.TS$ táblából a következő mezők kellenek: TS#, NAME.
Miután felvettük a mezőket, hozzunk létre két Lookup mezőt a SYS.USER$ táblához kapcsolt ADOTable-ben.
Az első Lookup kapcsolat (Default Tablespace):
- Name: DTS
- Type: String
- Size: 30
- Key Fields: DATATS#
- DataSet: ADOTable2
- Lookup keys: TS#
- Result Field: NAME
A második Lookup kapcsolat (Temporary Tablespace):
- Name: TTS
- Type: String
- Size: 30
- Key Fields: TEMPTS#
- DataSet: ADOTable2
- Lookup keys: TS#
- Result Field: NAME
Az eredménytáblát megjelenítő DBgrid-et egy DataSource objektumon keresztül az ADOTable1-hez kapcsoljuk hozzá, melyből a NAME, DTS és TTS mezők tartalmát kell megjelenítenünk.