Adatbázis rendszerek. Gyakorlati jegyzet. Készítette: Selling István

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "Adatbázis rendszerek. Gyakorlati jegyzet. Készítette: Selling István"

Átírás

1 Gyakorlati jegyzet Készítette: Selling István 2012

2 Tartalomjegyzék 1. Első gyakorlat 3 2. Második gyakorlat 5 3. Harmadik gyakorlat 9 4. Negyedik gyakorlat Ötödik gyakorlat Hatodik gyakorlat Hetedik gyakorlat Nyolcadik gyakorlat Kilencedik gyakorlat Tizedik gyakorlat Tizenegyedik gyakorlat oldal

3 1. Első gyakorlat 1.1. Feladat kitűzés Hozzunk létre egy három táblából álló adatbázist a következő módon: Diák tábla: Neptun kód: A Diák tábla elsődleges kulcsa, 6 karakterből áll. Név: A Diák neve, 25 karakterből állhat. Tárgy tábla: Tkód: A Tárgy tábla elsődleges kulcsa, 10 karakterből álló tárgykód. Név: A tárgy neve, 25 karakterből állhat. Leírás: A tárgy leírása, 70 karakterből állhat. Oktató tábla: Okód: Az Oktató tábla elsődleges kulcsa, 6 karakterből áll. Név: Az oktató neve, 25 karakterből állhat. Szoba: Az oktató szobája, 7 karakterből állhat. Az Oktató és Tárgy tábla között egy a többhöz kapcsolat áll fenn. A Tárgy és Diák tábla között több a többhöz kapcsolat áll fenn. Ennek a kapcsolatnak a Jegy az attribútuma A feladat ER modellje 1.3. Bejelentkezés az SQL szerverre Az isqlplus szerver a következő címen érhető el: :5560/isqlplus Első bejelentkezéskor mind a felhasználónév, mind a jelszó a neptunkód. Ezt a következő paranccsal lehet módosítani: 3. oldal

4 ALTER USER felhasznalo_nev IDENTIFIED BY uj_jelszo; 1.4. A feladat megoldása Create TABLE Diak (Neptunkod Varchar(6) Primary Key, Nev Varchar(25)); Create TABLE Oktato (Okod Varchar(6) Primary Key, Nev Varchar(25), Szoba Create TABLE Targy (Tkod Varchar(10) Primary Key, Nev Varchar(25), Leiras Create TABLE Jegyek (Jegy Number(1), Tkod Varchar(10) REFERENCES Targy(Tkod), Neptunkod Varchar(6) REFERENCES Diak(Neptunkod)); 4. oldal

5 2. Második gyakorlat 2.1. LDAP konfigurációs fájl példa ucdata-path./ucdata include./schema/core.schema include./schema/cosine.schema include./schema/nis.schema include./schema/inetorgperson.schema include./schema/openldap.schema include./schema/dyngroup.schema pidfile./run/slapd.pid argsfile./run/slapd.args # Enable TLS if port is defined for ldaps TLSVerifyClient never TLSCipherSuite HIGH:MEDIUM:-SSLv2 TLSCertificateFile./secure/certs/server.pem TLSCertificateKeyFile./secure/certs/server.pem TLSCACertificateFile./secure/certs/server.pem # bdb database definitions database bdb suffix "dc=maxcrc,dc=com" rootdn "cn=manager,dc=maxcrc,dc=com" # Cleartext passwords, especially for the rootdn, should # be avoid. See slappasswd(8) and slapd.conf(5) for details. # Use of strong authentication encouraged. rootpw SSHABw0oPbVXljDFQQ5Dqx/143XE2wH8bzw A példa elemzése A konfigurációs fájl legelején találhatóak az include utasítások. Ezek segítségével sémákat tölthetünk be. Sémák megadásánál választhatunk az előredefiniált között, vagy írhatunk sajátot is. Ha saját magunk írunk ilyen szerkezetet, akkor azt LDIF formátumbanl kell megadnunk. Miután megírtuk, a szerver konfigurációs fájljába illesztjük, az include listába, majd pedig a változtatás érvénybe lépéséhez leállítjuk, és újra elindítjuk a szervert. A konfigurációs fájl vége lehet még számunkra érdekes. A database mögött megadjuk, hogy a háttérben milyen adatbázistípus van, mivel az LDAP (Lightweight Directory Access Protocol) nem tárol adatokat, így egy adatbázist kell megadnunk, melyben majd az adatok tárolásra kerülnek. A suffix mögött megtalálhatjuk, hogy mi az a DN (Distinguished Name) előtag, amely minden hivatkozás elé körül. A root dn mögött megadjuk a rendszergazda nevét, ami egy bejegyzést jelent a fában, és a végén a rootpw segítségével megadjuk a rendszergazda jelszavát. Ha vannak jogosultsági parancsok, akkor ezek ezután találhatóak meg Jogosultsági parancs, példa Legyen a hierarchiánkban egy elem a következő azonosítóval: dn= a=1, b=2. Adjunk ezen elem részfájának minden felhasználójának módosítási, és írási jogot! ACCESS TO dn.subtree="a=1,b=2" BY users write 5. oldal

6 2.4. JXplorer Ebben a fejezetben tekintsük meg a JXplorer programot, ami egy olyan LDAP böngésző, amiben van lehetőségünk az adatok módosítására is. Ahhoz, hogy bejelentkezzünk, kattintsunk a File menüre, majd azon belül a Connect lehetőségre. Ezen a bejelentkező felületen lehetőségünk van megadni a Host címét, ahova csatlakozunk, BaseDN értéket, és a biztonság szintjét. A Host legyen a , és a 389es porton kapcsolódjunk hozzá.biztonsági szintnél válasszuk ki a User+Password lehetőséget. Ezután adjuk meg a CN értéket, és a jelszót. cn=kecso_d, ou=halllgatok_2012, o=db_msc, dc=com Az ehhez tartozó jelszó megegyezik a CN értékkel, azaz ebben az esetben Kecso_D. 6. oldal

7 Sikeres bejelentkezés esetén láthatjuk az LDAP hierarchiát a bal oldalon. A fent található Quick Search funkcióval lehetőségünk van lekérdezésekre, attribútum=érték alakkal. Ha az adatokat módosítani akarjuk, akkor erre a jobboldali felületen van lehetőségünk. Kattintsunk a Table Editor fülre, és láthatjuk táblázatban az adatokat, és egyszerűen írjuk át. Ezután kattintsunk alul a Submit gombra, és megtörténik az adatok változtatása. Új elem felvitelére is van lehetőségünk. Kattintsunk a fában a megfelelő szülő elemre a jobb egérgombbal, és használjuk a New opciót. A képen is látható módon meg kell adnunk a szülő elem DN-jét, és a RelativeDN-t, ami a DN első tagja. Ezután ki kell jelölnünk, hogy az új elem melyik osztálysémákra illeszkedjen, legalább 1 osztályba tartoznia kell. Ezután, ha van kötelező attribútum, akkor annak az értéket meg kell adni. Új elem felvitelére lehetőségünk van LDIF fájl segítségével is. 7. oldal

8 2.5. Tervezési feladat Vegyünk egy iskolát, és készítsünk rendszert az osztályok névsorához! Adjuk meg az LDIF fájlt! dn: o=iskola objectclass: organisation dn: ou=2012, o=iskola objectclass: organisation unit ou=2012 dn: ou=a, ou=2012, o=iskola objectclass: organisation unit ou=a cn=pál, ou=a, ou=2012, o=iskola objectclas: common name cn=pál Mindegyik szinten meg kell adni a következőket az adott entry: DN értékét, osztálytípusát, és RelativeDN értékét. 8. oldal

9 3. Harmadik gyakorlat 3.1. Kitűzött feladat Valósítsuk meg a következő ER modell megfelelőjét LDAP környezetben! Az ER modell kulcsainak feleljenek meg a RelativeDN értékek! 3.2. Hierarchikus modellre átalakítás A kitűzött feladatot a következő hierarchia alapján képzelhetjük el: Legfelső szinten áll a saját bejegyzésünk, ennek a részfája lesz az összes többi. Alatta az ország áll, ez lesz a részfa gyökere. Harmadik szinten a kiadók állnak. Legalsó szinten pedig a könyvek találhatóak Megoldási menet Jelentkezzünk be a JXplorer segítségével az LDAP rendszerbe! Bejelentkezés után kattinsunk a saját cn értékű bejegyzésre jobb egérgombbal, és használjuk a new funkciót. Adjuk meg az RDN értékét, válasszunk ki a listából egy olyan osztályt, amire illeszkedik a megvalósítandó egyed, adjunk értéket a szükséges attribútumoknak, illetve az opcionálisok közül azoknak, amelyek megfelelnek a céljainknak, ezután kattintsunk a Submit gombra. Egy lehetséges objektumosztály felépítés: Az országnak adjunk country típusú osztályt. A kiadó legyen organisation típusú. A könyv pedig legyen organisation unit típusú. 9. oldal

10 4. Negyedik gyakorlat 4.1. Kitűzött feladat Adott egy relációs tábla, amelynek az egyik eleme XML típusú. Feladatok: Hozzuk létre a táblát! Vigyünk fel 4 rekordot! Készítünk direkt lekérdezési listát! Az üzenetek kódját, és címét listázzuk ki, mind xpath, mind xquery segítségével! Az olvasatlan üzenetek típusát írjuk át olvasottá! 4.2. A feladat modellje 4.3. A feladatok megoldásai Először hozzuk létre a táblát! Create TABLE Uzenetek (Kod int Primary Key, Datum Varchar(15), Uzenetek XMLTYPE); Ezután töltsük fel négy rekorddal! INSERT INTO Uzenetek VALUES (1, 2012,XMLTYPE ( <level><cim>a</cim><torzs>torzs1</torzs><tipus>u</tipus></level> )); INSERT INTO Uzenetek VALUES (2, 2011,XMLTYPE ( <level><cim>b</cim><torzs>torzs2</torzs><tipus>u</tipus></level> )); INSERT INTO Uzenetek VALUES (3, 2002,XMLTYPE ( <level><cim>c</cim><torzs>torzs3</torzs><tipus>r</tipus></level> )); INSERT INTO Uzenetek VALUES (4, 2001,XMLTYPE ( <level><cim>d</cim><torzs>torzs4</torzs><tipus>u</tipus></level> )); Valósítsuk meg a direkt lekérdezést! Select Extract(uzenet, /level ) From Uzenetek; Listázzuk ki a kód+cím párosokat, először xpath segítségével! Select kod,extract(uzenet, //level/cim/text() ) From Uzenetek; Ezután xquery segítségével valósítsuk meg ugyanezt! Select kod, XMLQuery( for $v in //level return $v/cim/text() PASSING BY VALUE uzenet RETURNING CONTENT) FROM Uzenetek; Írjuk át az olvasatlan levelek típusát (U) olvasottra (R)! UPDATE Uzenetek SET uzenet=updatexml( uzenet, //level/tipus,xmltype( <tipus>r</tipus> )) WHERE ExtractValue(uzenet, //level/tipus )= U ; 10. oldal

11 5. Ötödik gyakorlat 5.1. SQLJ távoli elérés SQLJ távoli eléréshez szükségünk van a kapcsolódási paraméterekre, és a tűzfal megfelelő beállítására. A kapcsolódási paraméterek megadását egy példán keresztül mutatjuk be. jdbc:oracle:thin:@ :1521:orcl jdbc:oracle:thin: A kapcsolati drivert azonosítja, azaz JDBC segítségével kötődünk az adatbázisunkhoz :1521: IP cím, vagy domain name formában azonosítjuk a távoli erőforrást, amihez kapcsolódni akarunk. orcl: Adatbázis SID (System ID). Ennek segítségével azonosíthatjuk be a szolgáltatást. Az Oracle hálózati komponensét (SQLNET ) használva a tnsnames.ora konfigurációs fájlban találhatjuk meg a lehetőségeket, amikből választhatunk. Ez kliens oldalon leírt, lokális összerendelése a logikai szervernévnek, és a fizikai paramétereknek Első feladat Írassuk ki SQLJ segítségével a felhasználó nevünket! public class Sqlj1 { public Sqlj1() { super(); } } public static void main(string[] args) { Sqlj1 sqlj1 = new Sqlj1(); String username; System.out.println("Hello"); try { Oracle.connect("jdbc:oracle:thin:@ :1521:orcl","kovacs","CCC"); #sql {SELECT user INTO :username FROM dual }; System.out.println(username); } catch(sqlexception e){ System.err.println(e.getMessage()); }; } 5.3. Második feladat Készítsünk egy olyan metódust, mely megvalósítja egy táblába egy rekord felvitelét! A rekord mezőinek értékét a metódus a paraméterein keresztül kapja meg! public static int seged(int current_tkod, String current_tnev, int current_megyseg) { try{ #sql{insert INTO Termek(tkod,tnev,megyseg) VALUES (:current_tkod,:current_tnev,:current_megyseg)}; #sql{commit}; } catch(sqlexception e){ System.err.println(e.getMessage()); }; return 1; } 11. oldal

12 Ezen metódus meghívása a következőképpen történik: Sqlj1.seged(1,"auto",3); 5.4. Harmadik feladat Valósítsuk meg a nevek lekérdezését kurzor segítségével! Első lépésként hozzunk létre egy iterátor változót, az osztálydefiníció előtt! #sql iterator m1 (String tnev); Ezután hozzunk létre egy metódust az osztályban, ami megvalósítja a kurzort! public static void kurzoros() { try{ m1 it1=null; #sql it1 = {select tnev from termek order by tnev}; System.out.println("Elkezdve"); while(it1.next()){ System.out.println(it1.tnev()); } it1.close(); } catch (SQLException e){ System.err.println(e.getMessage()); }; } Ezután hívjuk meg a metódust! Sqlj1.kurzoros(); 12. oldal

13 6. Hatodik gyakorlat Hozzunk létre egy UDT típust isqlplus szerveren keresztül! Hozzunk létre egy táblát, aminek egyik mezője ez az UDT típus, és töltsük fel két elemmel! Hajtsunk végre egy általános lekérdezést, és egyet az UDT típusú mező értéke alapján! CREATE TYPE diaktip AS OBJECT (Nev CHAR(20), Kor NUMBER(3)); CREATE TABLE munka (Kod NUMBER(3), Felelos diaktip); INSERT INTO munka VALUES(1,diaktip( Laci,23)); INSERT INTO munka VALUES(2,diaktip( Feri,24)); Ebben a parancsban látható diaktip(... ) szerkezet a létrehozott UDT típusunk konstruktora. SELECT * FROM munka; SELECT * FROM munka m where m.felelos.kor>23; Az m ebben az esetben egy iterátornak felel meg, amin keresztül érhetjük el az adott rekord mezőinek értékét. Először hivatkozunk az UDT típusú mező nevére, majd. operátor segítségével hivatkozunk annak elemére. 13. oldal

14 7. Hetedik gyakorlat 7.1. Adatbázis Legyen az adatbázisunkban két tábla: Dolgozók tábla: Kód, elsődleges kulcs Név Fizetés Üzem, idegen kulcs Üzemek tábla: Kód, elsődleges kulcs Név 7.2. Első feladat Hozzunk létre PL/SQL nyelven egy tárolt eljárást, ami egy üzem rekordot visz fel az adatbázisunkba! Az értékeket bemenő paramétereken keresztül kapja meg! CREATE OR REPLACE PROCEDURE uj_uzem (current_kod int, current_nev char) IS Begin INSERT INTO uzemek(kod, nev) VALUES (current_kod, current_nev); End; A metódus hívása a következőképpen történik: EXECUTE uj_uzem(kod, nev); 7.3. Második feladat Hozzunk létre egy olyan tárolt eljárást, ami egy üzem rekordot visz fel az adatbázisunkba úgy, hogy csak az üem nevét kapja meg paraméterként, az üzem kódját a következő szabad értéknek tekinti! CREATE OR REPLACE PROCEDURE uj_uzem2(current_nev char) IS uj_ertek uzemek.kod%type; Begin Select max(kod) INTO uj_ertek FROM uzemek; Insert into uzemek(kod,nev) Values(uj_ertek+1,current_nev); End; Fontos megjegyezni, hogy ez az eljárás nem fog működni üres tábla esetén, mivel a Select utasítás nem ad vissza értéket Második feladat javítása Javítsuk ki a második feladatot úgy, hogy üres tábla esetén is működjön! Első megoldás: Hozzunk létre kivételt aszerint, hogy a Select parancs talált-e adatot! CREATE OR REPLACE PROCEDURE uj_uzem2_jav1(current_nev char) IS uj_ertek uzemek.kod%type; Begin Begin Select kod into uj_ertek from (select kod from uzemek order by kod desc) where rownum=1; Exception WHEN NO_DATA_FOUND THEN uj_ertek:=0; End; Insert into uzemek(kod,nev) Values(uj_ertek+1,current_nev); End; 14. oldal

15 Második megoldás: Hozzunk létre kivételt az alapján, hogy sikerült-e az Insert parancsnak rekordot felvinnie a táblába! CREATE OR REPLACE PROCEDURE uj_uzem2_jav2(current_nev char) IS uj_ertek uzemek.kod%type; Begin Begin Select max(kod) INTO uj_ertek FROM uzemek; Insert into uzemek(kod,nev) Values(uj_ertek+1,current_nev); Exception WHEN OTHERS THEN INSERT into uzemek(kod,nev) values(00,current_nev); End; End; 15. oldal

16 8. Nyolcadik gyakorlat Adott a következő EER modell: Valósítsuk meg ezt a modellt objektumrelációs adatbázis modellen keresztül, objektumtáblákat használva! 8.1. Személy létrehozása A Személyek tábla létrehozásához először el kell készítenünk egy lakcím típust. CREATE TYPE lakcim_t AS OBJECT (varos VARCHAR2(20), utca VARCHAR2(20)); Hozzuk létre a személy típust! A személy típusnak legyen egy életkort megadó függvénye! CREATE TYPE szemely_t AS OBJECT (nev VARCHAR2(20), lakcim LAKCIM_T, szul_ev NUMBER(4), MEMBER FUNCTION get_kor RETURN NUMBER) NOT FINAL; Hozzunk létre a függvény törzsét! CREATE OR REPLACE TYPE BODY szemely_t IS MEMBER FUNCTION get_kor RETURN NUMBER AS szk NUMBER(4); BEGIN SELECT TO_NUMBER(TO_CHAR(SYSDATE, YYYY )) - SELF.szul_ev INTO szk FROM DUAL; RETURN szk; END; END; Hozzuk létre a személyobjektumokból álló Személyek táblát! CREATE Table Szemelyek OF szemely_t; Töltsük fel ezt a táblát néhány személlyel! INSERT INTO szemelyek VALUES( szemely_t( sz1,lakcim_t( Eger, Ut 12 ),1975)); INSERT INTO szemelyek VALUES( szemely_t( sz2,lakcim_t( Miskolc, Ut 13 ),1985)); INSERT INTO szemelyek VALUES( szemely_t( sz3,lakcim_t( Eger, Ut 14 ),1992)); 16. oldal

17 Kérdezzük le a személyek nevét, és életkorát! Select d.nev, d.get_kor() FROM szemelyek d; Kérdezzük le, hogy hányan laknak Egerben! Select count(*) FROM szemelyek d WHERE d.lakcim.varos= Eger ; 17. oldal

18 9. Kilencedik gyakorlat Oldjuk meg LINQPad program segítségével a következő feladatokat! Használjuk a LINQPad C# statements beállítását! 9.1. Parancsmód Első feladat: Adjunk meg egy tömböt, és hajtsunk végre rendezett kiírást! string[] names = {"vas","ember","kabala"}; var q = from n in names orderby n select n; q.dump(); Második feladat: Adjunk meg emberekből és hozzájuk tartozó kódokból áló rekordokat, és listázzuk ki név szerinti csökkenő sorrendben! var emberek = new [] { new{kod=1,nev="feri"}, new{kod=3,nev="antal"}, new{kod=4,nev="anna"}}; var q = from n in emberek orderby n.nev descending select new{nev=n.nev,kod=n.kod}; Harmadik feladat: Adottak emberek (kód, név, fizetés, beosztás). Listázzuk ki a 30 egységnél többet keresők neveit! var emberek = new [] { new{kod=1,nev="feri",fizetes=30,beosztas="fonok"}, new{kod=3,nev="antal",fizetes=29, beosztas="szerelo"}, new{kod=4,nev="anna", fizetes=31, beosztas="nagyfonok"}}; var q = from n in emberek where n.fizetes>=30 orderby n.nev descending select n.nev; Negyedik feladat: Adjuk meg az emberek nevét, és azt, hogy hol található az üzemük! var emberek = new [] { new{kod=1,nev="feri",fizetes=30,beosztas="fonok", uzem=1}, new{kod=3,nev="antal",fizetes=29, beosztas="szerelo", uzem=2}, new{kod=4,nev="anna", fizetes=31, beosztas="nagyfonok", uzem=3}}; var uzemek = new[] { new{kod=1, varos="eger"}, new{kod=2, varos="miskolc"}, new{kod=3, varos="budapest"}}; var q = from n in emberek join u in uzemek on n.uzem equals u.kod select new{nev=n.nev,varos=u.varos}; Ötödik feladat: Adjuk meg valamelyik beosztas átlagfizetését! Az átlagszámítás metódusként valósítható meg, amit egy objektumkollekcióhoz kell kötni. 18. oldal

19 var emberek = new [] { new{kod=1,nev="feri",fizetes=30,beosztas="fonok", uzem=1}, new{kod=3,nev="antal",fizetes=29, beosztas="kisfonok", uzem=2}, new{kod=4,nev="anna", fizetes=36, beosztas="fonok", uzem=3}}; var uzemek = new[] { new{kod=1, varos="eger"}, new{kod=2, varos="miskolc"}, new{kod=3, varos="budapest"}}; var q = from n in emberek where n.beosztas=="fonok" group n.fizetes by 1 into g select g.average(); 9.2. Lambda kalkulus Első feladat: Adjuk meg az emberek neveit csökkenő sorrendben! var q = emberek.orderby(x => x.nev).reverse().select(x => x.nev); Második feladat: Számoljuk meg, hány főnök beosztású ember van! var q = emberek.where(x => x.beosztas=="fonok").count(); Harmadik feladat: Adjuk meg a főnök beosztású emberek átlagfizetését! var q = emberek.where(x => x.beosztas=="fonok").average(x => x.fizetes); Negyedik feladat: Adjuk meg az emberek nevét, és az üzemük városát! var q = emberek.join(uzemek, x=>x.uzem, y => y.kod, (x,y) => new{x.nev,y.varos}); Ötödik feladat: Adjuk meg, hogy hányan dolgoznak az egyes városokban! var q = emberek.join(uzemek, x=>x.uzem, y => y.kod, (x,y) => new{x.nev,y.varos}).groupby(x =>x.varos).select(x => new{kulcs=x.key, szam=x.count()}); Hatodik feladat: Adjuk meg a második legtöbbet kereső ember nevét! var q = emberek.orderby(x=> x.fizetes).reverse().select(x => x.nev).elementat(1); Hetedik feladat: Adjuk meg az átlagnál többet keresők neveit! var q = emberek.where(x=>x.fizetes>(emberek.average(y=>y.fizetes))).select(x=>x.nev); 19. oldal

20 10. Tizedik gyakorlat Datalog DLV rendszerben oldjuk meg a következő problémákat! A rendszer elérhető kovacs/ Futtatás: dlv.exe parancssorból. Első feladat: Ha süt a Nap, akkor meleg az idő! sut_a_nap. meleg_van :- sut_a_nap. hideg_van :- not sut_a_nap. Második feladat: Adott három ember, és hozzájuk tartozó predikátum: idősebb. Valósítsuk meg a tranzitivitást! Futtatáskor be kell kapcsolni a -brave kapcsolót, hogy következtessen. idosebb(antal,feri). idosebb(feri,tomi). idosebb(x,z) :- idosebb(x,y), idosebb(y,z). idosebb(feri,x)? Harmadik feladat: Készítsünk egy családfát, és írjuk meg, hogy ki kinek a rokona, illetve ki kinek az unokája! szulo(anya,gyerek). szulo(apa,gyerek). szulo(apa,gyerek2). szulo(anya,gyerek2). szulo(nagyapa1,apa). szulo(nagyapa2,anya). szulo(nagymama1,anya). szulo(nagymama2,apa). unoka(x,z) :- szulo(x,y), szulo(y,z). rokona(x,z) :- unoka(x,z). rokona(x,z) :- unoka(z,x). rokona(x,z) :- szulo(x,z). rokona(x,z) :- szulo(z,x). rokona(x,z) :- szulo(y,x),szulo(y,z). Negyedik feladat: Páros számok meghatározására írjunk predikátumot! Fontos, hogy korlátozni kell futáskor, hogy mit jelent az egész tartomány, be kell állítani a maxint értékét. Ezt a -N=100 kapcsoló beállításával tudjuk 100ra beállítani. pszam(2). pszam(y) :- Y=X+2, pszam(x). Ötödik feladat: Írjunkl predikátumot a Fibonacci számok meghatározására! fszam(1,1). fszam(2,1). fszam(x,y) :- fszam(x1,y1), fszam(x2,y2), Y=Y1+Y2, X1=X-1, X2=X-2, X=X1+1, X1=X2+1. Ötödik feladat: Prímszámot meghatározó predikátum írása! osztoja(y,x) :- \#mod(x,y,0), Y>0, \#int(x), \#int(y). nemprimszam(x) :- Y<X, Y>1, osztoja(y,x), \#int(x), \#int(y). primszam(x) :- not nemprimszam(x), X>1, \#int(x). primszam(x)? Hatodik feladat: Tanulmányozzuk a következő három színkérdést megoldó programot! Hetedik feladat: Tanulmányozzuk a következő programot! kovacs/p1.txt 20. oldal

21 11. Tizenegyedik gyakorlat Protégé Hozzunk létre egy mintaontológiát a következő módon! Legyenek ételek, azon belül levesek és főételek, illetve legyenek italok, azon belül alkoholos és alkoholmentes italok! Indítsuk el a Protégé ontológia-szerkesztő programot! Kattintsunk a Classes menüpontra, és hozzuk létre a mintát! Kattintsunk a Thing nevű osztályra, majd az Add subclass gombra! Így hozhatunk létre alosztályokat. Lehetőségünk van az eddig létrehozott ontológiánkat megtekinteni XML-es alakban is. Ehhez kattintsunk a Window menüpontra, azon belüle Views, Ontology Views, és OWL/XML rendering. Az osztályhierarchia mellett találhatóak az osztályok leírásai. Állítsuk be itt, hogy az Ételek, és Italok egymással diszjunktak legyenek! Ehhez kattintsunk az Ételre, és a Disjoint With melletti plusz jelre kattintva állítsuk be az Ital osztályt, és ismételjük ezt meg a másik irányból! Állítsunk be tulajdonságokat a meglévő osztályainkhoz! Kattintsunk a Data Properties menüpontra, és hozzunk létre pár tulajdonságot a topdataproperty altulajdonságaiként! Ezekhez a tulajdonságokhoz állíthatunk értelmezési tartományt (Domains (intersection)), és értékkészletet (Ranges). Hozzunk létre példányokat a meglévő osztályhoz! Kattintsunk az Individuals menüpontra! Itt láthatjuk az osztályhierarchiánkat, mellette a példányok listáját, amellett pedig azok tulajdonságait. Hozzunk létre egy példányt a Főételekhez! Ehhez kattintsunk a Főétel osztályra, majd a példányok listájánál az Add individual gombra! 21. oldal

22 11.2. SPARQL A SPARQL egy ontológia lekérdező nyelv, RDF alapokkal rendelkezik, az OWL ezt vette át. Kattintsunk a SPARQL Query menüpontra! Valósítsunk meg pár mintalekérdezést! Kérdezzük le a teljes adatbázis tartalmát! Select?x?y?z Where {?x?y?z} Ez a lekérdezés minden állításhármast lekérdez. A? után írt kifejezések változókat jelentenek. Az y a kapcsolat típusát jelöli, az x és z pedig az objektumot és szubjektumot. Írassuk ki az italokat! Ehhez létre kell hozni egy saját névteret, jelölje ezt sajat alias. Select?x Where {?x rdfs:subclassof sajat:ital} Order By?x Kérdezzük le a rantott_szelet nevű példányok árait! Select?x Where {?q a sajat:rantott_szelet.?q sajat:ar?x.} 22. oldal

8. Gyakorlat SQL. DDL (Data Definition Language) adatdefiníciós nyelv utasításai:

8. Gyakorlat SQL. DDL (Data Definition Language) adatdefiníciós nyelv utasításai: 8. Gyakorlat SQL SQL: Structured Query Language; a relációs adatbáziskezelők szabványos, strukturált lekérdező nyelve SQL szabványok: SQL86, SQL89, SQL92, SQL99, SQL3 Az SQL utasításokat mindig pontosvessző

Részletesebben

1960 1970 1980 1990 2000

1960 1970 1980 1990 2000 Adatbázisok MSc szint 4.. témak t makör Hierarchikus adatmodell és az LDAP Dr. Kovács László ME 2009 Adatbázis adatmodellek típusai A piaci DBMS rendszerek adatmodellje - gépközeli - teljes (műveleti,

Részletesebben

B I T M A N B I v: T 2015.03.01 M A N

B I T M A N B I v: T 2015.03.01 M A N Adatbázis Rendszerek MSc 2. Gy: MySQL Táblák, adatok B I v: T 2015.03.01 M A N 1/41 Témakörök SQL alapok DDL utasítások DML utasítások DQL utasítások DCL utasítások 2/41 Az SQL jellemzése Az SQL a relációs

Részletesebben

Adatbázisok II. Jánosi-Rancz Katalin Tünde tsuto@ms.sapientia.ro 327A

Adatbázisok II. Jánosi-Rancz Katalin Tünde tsuto@ms.sapientia.ro 327A Adatbázisok II. 7 Jánosi-Rancz Katalin Tünde tsuto@ms.sapientia.ro 327A Oracle XML 7 Oracle XML DB Az XML adatok kezelésére az Oracle egy külön komponenst készített, az Oracle XML DB-t. Az XML adatok tárolására

Részletesebben

5. téma XML DB. Az adatkezelés és XML kapcsolata. Miért fontos az XML használata az adatbázis kezelésben?

5. téma XML DB. Az adatkezelés és XML kapcsolata. Miért fontos az XML használata az adatbázis kezelésben? Adatbázis modellek 5. téma XML DB Az adatkezelés és XML kapcsolata Miért fontos az XML használata az adatbázis kezelésben? Adattárolás alapformái: - strukturált - szabad-szöveges - szemi struktúrált -

Részletesebben

Adatbázis-kezelés. Harmadik előadás

Adatbázis-kezelés. Harmadik előadás Adatbázis-kezelés Harmadik előadás 39 Műveletek csoportosítása DDL adat definiálás Objektum létrehozás CREATE Objektum törlés DROP Objektum módosítás ALTER DML adat módosítás Rekord felvitel INSERT Rekord

Részletesebben

Adatbázis rendszerek SQL nyomkövetés

Adatbázis rendszerek SQL nyomkövetés Adatbázis rendszerek 1. 12. SQL nyomkövetés 1/32 B ITv: MAN 2017.10.26 Nyomkövetési feladat 2/32 Gyakorló feladatok Termék-Vásárlás-Vásárló Oktató-Tantárgy-Hallgató 3/32 Gyakorló feladat: Termék-Vásárlás-Vásárló

Részletesebben

Adatbázisok* tulajdonságai

Adatbázisok* tulajdonságai Gazdasági folyamatok térbeli elemzése 4. előadás 2010. 10. 05. Adatbázisok* tulajdonságai Rendezett, logikailag összefüggő és meghatározott szempont szerint tárolt adatok és/vagy információk halmaza Az

Részletesebben

Adatbázis Rendszerek II. 2. Gyakorló környezet

Adatbázis Rendszerek II. 2. Gyakorló környezet Adatbázis Rendszerek II. 2. Gyakorló környezet 37/1 B IT v: 2017.02.11 MAN Gyakorló környezet Géptermek 37/2 Jelszó váltás 1 2 3 4 37/3 Gyakorló környezet II. apex.oracle.com/en/ 37/4 A regisztrációs folyamat

Részletesebben

Adatbázis használat I. 5. gyakorlat

Adatbázis használat I. 5. gyakorlat Adatbázis használat I. 5. gyakorlat Tudnivalók Jövő hétre a normalizálást hozni vagy e- mailben beküldeni! 7. héten (= két hét múlva!) nagyzh + FF checkpoint: adattáblák feltöltése, megszorítások 2010.

Részletesebben

Java VI. Egy kis kitérő: az UML. Osztály diagram. Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07.

Java VI. Egy kis kitérő: az UML. Osztály diagram. Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07. Java VI. Öröklődés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07. Java VI.: Öröklődés JAVA6 / 1 Egy kis kitérő: az UML UML: Unified Modelling Language Grafikus eszköz objektum

Részletesebben

Excel ODBC-ADO API. Tevékenységpontok: - DBMS telepítés. - ODBC driver telepítése. - DSN létrehozatala. -Excel-ben ADO bevonása

Excel ODBC-ADO API. Tevékenységpontok: - DBMS telepítés. - ODBC driver telepítése. - DSN létrehozatala. -Excel-ben ADO bevonása DBMS spektrum Excel ODBC-ADO API Tevékenységpontok: - DBMS telepítés - ODBC driver telepítése - DSN létrehozatala -Excel-ben ADO bevonása - ADOConnection objektum létrehozatala - Open: kapcsolat felvétel

Részletesebben

Adatbázis Rendszerek II. 8. Gyakorló környezet

Adatbázis Rendszerek II. 8. Gyakorló környezet Adatbázis Rendszerek II. 8. Gyakorló környezet 1/24 B IT v: 2017.10.26 MAN Gyakorló környezet Géptermek 193.6.5.58:8080/apex H16_neptunkód ADMIN neptunkód 2/24 Jelszó váltás 1 2 3 4 3/24 Gyakorló környezet

Részletesebben

CREATE TABLE student ( id int NOT NULL GENERATED ALWAYS AS IDENTITY PRIMARY KEY, name varchar(100) NOT NULL, address varchar(100) NOT NULL )

CREATE TABLE student ( id int NOT NULL GENERATED ALWAYS AS IDENTITY PRIMARY KEY, name varchar(100) NOT NULL, address varchar(100) NOT NULL ) Célok: a Java DB adatbázis-kezelő rendszer használatának ismertetése, adatbázisok használata Java alkalmazásokban - kétrétegű architektúra, egyszerű kliens-szerver architektúra használata hálózati alkalmazásokhoz.

Részletesebben

Adatbázis Rendszerek II. 2. Ea: Gyakorló környezet

Adatbázis Rendszerek II. 2. Ea: Gyakorló környezet Adatbázis Rendszerek II. 2. Ea: Gyakorló környezet 26/1 B IT v: 2018.02.21 MAN Gyakorló környezet apex.oracle.com/en/ 26/2 A regisztrációs folyamat 26/3 26/4 26/5 26/6 26/7 26/8 26/9 26/10 26/11 Feladatok

Részletesebben

Adatbázis Rendszerek I. 10. SQL alapok (DML esettanulmány)

Adatbázis Rendszerek I. 10. SQL alapok (DML esettanulmány) Adatbázis Rendszerek I. 10. SQL alapok (DML esettanulmány) 23/1 B IT v: 2018.10.31 MAN DML adatokon műveletet végző utasítások DML Data Manipulation Language Rekordok (sorok) beszúrása (felvitele) Mezők

Részletesebben

Adatbázis-kezelés, információs-rendszerek

Adatbázis-kezelés, információs-rendszerek Adatbázis-kezelés, információs-rendszerek 3. Ea: Eskúel (2011) Structured Query Language v: 2011.09.05 Szűcs Miklós - ME, ÁIT. 1.o Témakörök SQL alapok DDL utasítások DML utasítások DQL utasítás DCL utasítások

Részletesebben

Szalai Ferenc szferi@gluon.hu. http://www.gluon.hu

Szalai Ferenc szferi@gluon.hu. http://www.gluon.hu Amit mindig is tudni akartál az LDAP-ról, de sosem merted megkérdezni Szalai Ferenc szferi@gluon.hu Bevezető Mi szösz az az LDAP? OpenLDAP szerver adatbázis felépítése szerver beállítása Mire jó az LDAP

Részletesebben

Csomag. Adatbázis-objektum Programozási eszközök gyűjteménye Két részből áll. specifikáció törzs (opcionális)

Csomag. Adatbázis-objektum Programozási eszközök gyűjteménye Két részből áll. specifikáció törzs (opcionális) Csomagok Csomag Adatbázis-objektum Programozási eszközök gyűjteménye Két részből áll specifikáció törzs (opcionális) Csomagspecifikáció CREATE [OR REPLACE] PACKAGE csomagnév [AUTHID {DEFINER CURRENT_USER}]

Részletesebben

Kliens oldali SQL-API

Kliens oldali SQL-API Adatbázis rendszerek I mysql SQL program API ME- GEIAL Dr. Kovács Lászl szló Üzleti logika elhelyezése adatbázis Kliens üzleti logika Nagy hálózati forgalom Decentralizált lt karbantartás Lassabb végrehajt

Részletesebben

OO PDO. Tehát PDO használatával, könnyen átállhatunk egy másik adatbáziskezelőre, anélkül hogy a kódot teljes egészében újraírnánk.

OO PDO. Tehát PDO használatával, könnyen átállhatunk egy másik adatbáziskezelőre, anélkül hogy a kódot teljes egészében újraírnánk. OO PDO PDO VS MYSQLi VS MYSQL ================================================================================ A PHP mysql metódusai elavultak, helyette lehet hazsnálni a MYSQLi metódusokat, amelyek szinte

Részletesebben

Adatbázis rendszerek II. Adatbázis elérése C# kliens programból ADO.NET API-n keresztül

Adatbázis rendszerek II. Adatbázis elérése C# kliens programból ADO.NET API-n keresztül Adatbázis rendszerek II. Adatbázis elérése C# kliens programból ADO.NET API-n keresztül Adatbázis elérés lehetőségei absztrakciós rétegen keresztül: - Open DataBase Connectivity (ODBC), közös függvényhalmaz,

Részletesebben

Adatbázis-kezelés ODBC driverrel

Adatbázis-kezelés ODBC driverrel ADATBÁZIS-KEZELÉS ODBC DRIVERREL... 1 ODBC: OPEN DATABASE CONNECTIVITY (NYÍLT ADATBÁZIS KAPCSOLÁS)... 1 AZ ODBC FELÉPÍTÉSE... 2 ADATBÁZIS REGISZTRÁCIÓ... 2 PROJEKT LÉTREHOZÁSA... 3 A GENERÁLT PROJEKT FELÉPÍTÉSE...

Részletesebben

Java és web programozás

Java és web programozás Budapesti Műszaki Egyetem 2015. 04. 08. 10. Előadás Ami kimearad múlthéten Ha már megvan a KeyListener vagy MouseListener osztályunk a következõ módon tudjuk hozzárendelni egy JFrame vagy JPanel-hez: Ami

Részletesebben

Adatbázisok webalkalmazásokban

Adatbázisok webalkalmazásokban Sapientia - EMTE, Pannon Forrás,,Egységes erdélyi felnőttképzés a Kárpát-medencei hálózatban 2010 A JDBC API A Data Access Object tervezési minta Adatforrás - DataSource JDBC architektúra A JDBC API java.sql

Részletesebben

Adatbázis Rendszerek II. 5. PLSQL Csomagok 16/1B IT MAN

Adatbázis Rendszerek II. 5. PLSQL Csomagok 16/1B IT MAN Adatbázis Rendszerek II. 5. PLSQL Csomagok 16/1B IT MAN B IT v: 2016.03.03 MAN Csomagok A DBMS csomagok a PL/SQL alkalmazások fejlesztését segítik, bennük tároljuk a létrehozott programok kódjait. A specifikációs

Részletesebben

Kilencedik témakör: Lazarus-Firebird. Készítette: Dr. Kotsis Domokos

Kilencedik témakör: Lazarus-Firebird. Készítette: Dr. Kotsis Domokos PASzSz Kilencedik témakör: Lazarus-Firebird Készítette: Dr. Kotsis Domokos Az SQLdb fülön IBConnection Kapcsolat A Data Access fülön Az SQLdb fülön... Select 1. Az SQLQuery lezárása. (Active := false,

Részletesebben

IBM WebSphere Adapters 7. változat 5. alváltozat. IBM WebSphere Adapter for Oracle E-Business Suite felhasználói kézikönyv 7. változat 5.

IBM WebSphere Adapters 7. változat 5. alváltozat. IBM WebSphere Adapter for Oracle E-Business Suite felhasználói kézikönyv 7. változat 5. IBM WebSphere Adapters 7. változat 5. alváltozat IBM WebSphere Adapter for Oracle E-Business Suite felhasználói kézikönyv 7. változat 5.kiadás IBM WebSphere Adapters 7. változat 5. alváltozat IBM WebSphere

Részletesebben

Java és web programozás

Java és web programozás Budapesti M szaki Egyetem 2013. november 20. 10. El adás SQLite SQLite: Adatbázis kezel rendszer SQL standardokat nagyrészt követi Nagyon elterjedt, pl böngész kben is használt Nehéz olyan programnyelvet

Részletesebben

Gyakorlás: Hozzunk létre egy Alkalmazottak táblát AZO szám, Részleg szöveg, Munkakör szöveg és BelépésDátuma dátum típussal.

Gyakorlás: Hozzunk létre egy Alkalmazottak táblát AZO szám, Részleg szöveg, Munkakör szöveg és BelépésDátuma dátum típussal. Adatbázis létrehozása Adatleíró műveletek CREATE DATABASE "tan1" WITH ENCODING= LATIN2 ; vagy parancssorból a terminál alatt $ createdb tan1 E=latin2 Kapcsolódás az adatbázishoz $ psql tan1 Adattábla létrehozása

Részletesebben

Vektoros grafikát tároló adatbázisok. Katona Endre Térképi adatbázisok diasorozata alapján

Vektoros grafikát tároló adatbázisok. Katona Endre Térképi adatbázisok diasorozata alapján Vektoros grafikát tároló adatbázisok Katona Endre Térképi adatbázisok diasorozata alapján Vektoros adatábrázolás Kép = rajzelemek sorozata, koordinátageometriai leírással. CAD rendszerekre jellemző (pl.

Részletesebben

ORACLE. SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók

ORACLE. SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) közönséges felhasználók Oracle SQL*Plus SQL ORACLE Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók Adatszótár: metaadatokat tartalmazó, csak olvasható

Részletesebben

BEVEZETÉS Az objektum fogalma

BEVEZETÉS Az objektum fogalma BEVEZETÉS Az objektum fogalma Program (1) Adat (2) Objektum Kiadványszerkesztés Word Táblázatkezelés Excel CAD AutoCad Adatbáziskezelés Access 1 Program (1) Adat (2) Objektum Adatmodell (2) A valós világ

Részletesebben

Eseményvezérelt alkalmazások fejlesztése II 12. előadás. Objektumrelációs adatkezelés (ADO.NET) Giachetta Roberto

Eseményvezérelt alkalmazások fejlesztése II 12. előadás. Objektumrelációs adatkezelés (ADO.NET) Giachetta Roberto Eötvös Loránd Tudományegyetem Informatikai Kar Eseményvezérelt alkalmazások fejlesztése II 12. előadás Objektumrelációs adatkezelés (ADO.NET) Giachetta Roberto A jegyzet az ELTE Informatikai Karának 2014.

Részletesebben

Tranzakciókezelés PL/SQL-ben

Tranzakciókezelés PL/SQL-ben Tranzakciókezelés PL/SQL-ben ACID tulajdonságok: Tranzakció Atomosság, Konzisztencia, Izoláció, Tartósság A tranzakció állhat: - Több DML utasításból - Egy DDL utasításból A tranzakció kezdete az első

Részletesebben

Egységes és objektumközpontú adatbázis-kezelés (2. rész)

Egységes és objektumközpontú adatbázis-kezelés (2. rész) Egységes és objektumközpontú adatbázis-kezelés (2. rész) A folytatásában a bemutatjuk, hogyan kezelhetünk Qt rendszer alatt SQL sormutatót, és készíthetünk grafikus felületet programoknak a Qt Designer

Részletesebben

Szálkezelés. Melyik az a hívás, amelynek megtörténtekor már biztosak lehetünk a deadlock kialakulásában?

Szálkezelés. Melyik az a hívás, amelynek megtörténtekor már biztosak lehetünk a deadlock kialakulásában? Szálkezelés 1. A szekvencia diagram feladata az objektumok egymás közti üzenetváltásainak ábrázolása egy időtengely mentén elhelyezve. Az objektumok életvonala egy felülről lefelé mutató időtengely. A

Részletesebben

LINUX LDAP címtár. Mi a címtár?

LINUX LDAP címtár. Mi a címtár? Forrás: https://wiki.hup.hu/index.php/ldap http://tldp.fsf.hu/howto/ldap-howto-hu/ Budapesti Műszaki és Gazdaságtudományi Egyetem, Micskei Zoltán: Címtárak Kezelése, 2012. https://hu.wikipedia.org/wiki/c%c3%admt%c3%a1rszolg%c3%a1ltat%c3%a1sok

Részletesebben

A relációs adatbáziskezelés szabványos nyelve Két fő csoportba sorolhatók az utasításai

A relációs adatbáziskezelés szabványos nyelve Két fő csoportba sorolhatók az utasításai 8. gyakorlat Structured Query Language Struktúrált lekérdező nyelv A relációs adatbáziskezelés szabványos nyelve Két fő csoportba sorolhatók az utasításai DDL (Data Definition Language) adatstruktúra definiáló

Részletesebben

SQL PÉLDATÁR. készült a PTE TTK Iskolai informatika III. kurzus teljesítésére

SQL PÉLDATÁR. készült a PTE TTK Iskolai informatika III. kurzus teljesítésére SQL PÉLDATÁR készült a PTE TTK Iskolai informatika III. kurzus teljesítésére PTE TTK Czimmermann Gergely MA matematika informatika tanár szakos hallgató 2017 Tartalomjegyzék 1. Adatleíró műveletek... 3

Részletesebben

Adatbázis Rendszerek I. 9. SQL alapok (DDL esettanulmány)

Adatbázis Rendszerek I. 9. SQL alapok (DDL esettanulmány) Adatbázis Rendszerek I. 9. SQL alapok (DDL esettanulmány) 41/1 B IT v: 2017.10.30 MAN DDL Adatstruktúra definiáló utasítások DDL Data Definition Language Adatszerkezetek (elsősorban táblák) létrehozása,

Részletesebben

Tartalomjegyzék. Tartalomjegyzék 1. Az SQL nyelv 1 Az SQL DDL alapjai 2

Tartalomjegyzék. Tartalomjegyzék 1. Az SQL nyelv 1 Az SQL DDL alapjai 2 Tartalomjegyzék Tartalomjegyzék 1 Az SQL nyelv 1 Az SQL DDL alapjai 2 Adatbázis parancsok 2 Táblaparancsok 2 A táblázat létrehozása 2 A táblázat módosítása 3 A tábla törlése 3 Indextábla létrehozása 3

Részletesebben

Adattípusok. Max. 2GByte

Adattípusok. Max. 2GByte Adattípusok Típus Méret Megjegyzés Konstans BIT 1 bit TRUE/FALSE SMALLINT 2 byte -123 INTEGER 4 byte -123 COUNTER 4 byte Automatikus 123 REAL 4 byte -12.34E-2 FLOAT 8 byte -12.34E-2 CURRENCY / MONEY 8

Részletesebben

Adatbázisok I. Az SQL nyelv

Adatbázisok I. Az SQL nyelv Adatbázisok I Az SQL nyelv SQL (Structured Query Language) Deklaratív nyelv, 1974-ben publikálták Halmaz orientált megközelítés, a relációs algebra műveleteinek megvalósítására Előzménye a SEQUEL (IBM)(Structured

Részletesebben

Adattípusok. Max. 2GByte

Adattípusok. Max. 2GByte Adattípusok Típus Méret Megjegyzés Konstans BIT 1 bit TRUE/FALSE TINIINT 1 byte 12 SMALLINT 2 byte -123 INTEGER 4 byte -123 COUNTER 4 byte Automatikus 123 REAL 4 byte -12.34E-2 FLOAT 8 byte -12.34E-2 CURRENCY

Részletesebben

Hálózati adminisztráció Linux (Ubuntu 8.04) 12. gyakorlat

Hálózati adminisztráció Linux (Ubuntu 8.04) 12. gyakorlat Hálózati adminisztráció Linux (Ubuntu 8.04) 12. gyakorlat Johanyák Zsolt Csaba 1 A gyakorlat célja az, hogy a hallgató tapasztalatokat szerezzen az OpenLDAP szerver telepítésében és konfigurálásában. A

Részletesebben

4. Gyakorlat: Csoportházirend beállítások

4. Gyakorlat: Csoportházirend beállítások 4. Gyakorlat: Csoportházirend beállítások 4.1. A Default Domain Policy jelszóra vonatkozó beállításai 4.2. Parancsikon, mappa és hálózati meghajtó megjelenítése csoport házirend segítségével 4.3. Alkalmazások

Részletesebben

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT október október 26. Adatbázisok 1 / 17

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT október október 26. Adatbázisok 1 / 17 Adatbázisok 8. gyakorlat SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT 2015. október 26. 2015. október 26. Adatbázisok 1 / 17 SQL nyelv Structured Query Language Struktúrált lekérdez

Részletesebben

Készítette: Szabóné Nacsa Rozália

Készítette: Szabóné Nacsa Rozália Készítette: Szabóné Nacsa Rozália nacsa@inf.elte.hu 1 Structured Query Language (Struktúrált lekérdező nyelv) Relációs adatbázisok kezelésére kifejlesztett szabvány 2 DIAKOK dkód vnév knév 1001 Kiss János

Részletesebben

2012.05.11. Adatbázisok I A relációs algebra

2012.05.11. Adatbázisok I A relációs algebra Adatbázisok I A relációs algebra 2 3 4 1 Feladatok Tantárgy tkód cím kredit oktató Oktató oktkód név tanszék fizetés Feladatok 1. Az átlagos kreditpontszám: Γ avg(kredit) (Tantárgy) 2. A Matematika tanszéken

Részletesebben

Tábla létrehozása: CREATE TABLE alma( ID INT( 3 ) NOT NULL PRIMARY KEY, Leiras VARCHAR( 100 ) );

Tábla létrehozása: CREATE TABLE alma( ID INT( 3 ) NOT NULL PRIMARY KEY, Leiras VARCHAR( 100 ) ); Tábla létrehozása: CREATE TABLE alma( ID INT( 3 ) NOT NULL PRIMARY KEY, Leiras VARCHAR( 100 ) ); CREATE TABLE `dihunor`.`csapat` ( `ID` INT( 4 ) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT 'A csapat azonositoja',

Részletesebben

SQL- Utasítások csoportosítása Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER

SQL- Utasítások csoportosítása Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER Adatbázisok I SQL- Utasítások csoportosítása Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER Módosítás: DML: - rekord felvitel INSERT - rekord törlés

Részletesebben

Adatbázisok II. Jánosi-Rancz Katalin Tünde 327A 1-1

Adatbázisok II. Jánosi-Rancz Katalin Tünde 327A 1-1 Adatbázisok II. 1 Jánosi-Rancz Katalin Tünde tsuto@ms.sapientia.ro 327A 1-1 Ajánlott irodalom Ullman-Widom: Adatbázisrendszerek. Alapvetés (Második, átdolgozott kiad), Panem, 2008. november (bővítés pl.uml,

Részletesebben

Vizuális programozás gyakorlat

Vizuális programozás gyakorlat Vizuális programozás gyakorlat A gyakorlat célja az entitás modell készítésének és az MS SQLEXPRESS használatának gyakorlása. A gyakorlat során egy könyvtári szoftver adatmodelljét tervezzük meg, valamint

Részletesebben

INFORMATIKAI ALAPISMERETEK

INFORMATIKAI ALAPISMERETEK Informatikai alapismeretek középszint 1021 ÉRETTSÉGI VIZSGA 2011. május 13. INFORMATIKAI ALAPISMERETEK KÖZÉPSZINTŰ ÍRÁSBELI ÉRETTSÉGI VIZSGA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ NEMZETI ERŐFORRÁS MINISZTÉRIUM

Részletesebben

Adatbázisban tárolt kollekciók

Adatbázisban tárolt kollekciók Adatbázisban tárolt kollekciók Dinamikus tömb és beágyazott tábla lehet CREATE TYPE t_beagy IS TABLE OF NUMBER; CREATE TYPE t_dint IS VARRAY(5) OF NUMBER; CREATE TABLE koll_tab ( azon NUMBER PRIMARY KEY,

Részletesebben

11. Gyakorlat: Certificate Authority (CA), FTP site-ok

11. Gyakorlat: Certificate Authority (CA), FTP site-ok 11. Gyakorlat: Certificate Authority (CA), FTP site-ok 11.1. A CA szerver szerepkör telepítése a DC01-es szerverre 11.2. Az FTP szervíz telepítése a DC01-es szerverre 11.3. A szükséges DNS rekordok létrehozása

Részletesebben

ADATBÁZIS RENDSZEREK I BEADANDÓ

ADATBÁZIS RENDSZEREK I BEADANDÓ ADATBÁZIS RENDSZEREK I BEADANDÓ n é v : H u zynets Erik n e p t un: BJ8BDJ t a n k ö r: G2-BGI G y a k. v ezető: Smid László G y a k. időpontja: Szerda 16-18 Feladat megfogalmazása Beadandóm főként számítógépes

Részletesebben

SQLServer. DB Recovery modes

SQLServer. DB Recovery modes SQLServer 13. téma Szöveges állományok kezelése XML DB Recovery modes A DML műveletek hatékonyságának fontos eleme a naplózás módozata: - FULL Recovery mode: minden elemi művelet naplózódik költséges,

Részletesebben

Access adatbázis elérése OLE DB-n keresztül

Access adatbázis elérése OLE DB-n keresztül Access adatbázis elérése OLE DB-n keresztül Készítsünk egy grafikus felülető alkalmazást, ami lehetıvé teszi egy Access adatbázisban tárolt hallgatói adatok (EHA, Név, e-mail cím) lekérdezését (összes

Részletesebben

Webes alkalmazások fejlesztése 8. előadás. Webszolgáltatások megvalósítása (ASP.NET WebAPI)

Webes alkalmazások fejlesztése 8. előadás. Webszolgáltatások megvalósítása (ASP.NET WebAPI) Eötvös Loránd Tudományegyetem Informatikai Kar Webes alkalmazások fejlesztése 8. előadás (ASP.NET WebAPI) 2016 Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto A webszolgáltatás

Részletesebben

Adatbázis-lekérdezés. Az SQL nyelv. Makány György

Adatbázis-lekérdezés. Az SQL nyelv. Makány György Adatbázis-lekérdezés Az SQL nyelv Makány György SQL (Structured Query Language=struktúrált lekérdező nyelv): relációs adatbázisok adatainak visszakeresésére, frissítésére, kezelésére szolgáló nyelv. Születési

Részletesebben

Debreceni Egyetem Informatikai Kar TANULÓI NYILVÁNTARTÓ SZOFTVER FIREBIRD ADATBÁZIS ALKALMAZÁSÁVAL

Debreceni Egyetem Informatikai Kar TANULÓI NYILVÁNTARTÓ SZOFTVER FIREBIRD ADATBÁZIS ALKALMAZÁSÁVAL Debreceni Egyetem Informatikai Kar TANULÓI NYILVÁNTARTÓ SZOFTVER FIREBIRD ADATBÁZIS ALKALMAZÁSÁVAL Témavezető: Dr. Bajalinov Erik Tudományos főmunkatárs Készítette: Juhász Gergely József Informatikatanári

Részletesebben

SQL ALAPOK. Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai

SQL ALAPOK. Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai SQL ALAPOK Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai BEVEZETÉS SQL: Structured Query Language Strukturált Lekérdező Nyelv Szabvány határozza meg, azonban számos nyelvjárása létezik

Részletesebben

Csatlakozás a BME eduroam hálózatához Setting up the BUTE eduroam network

Csatlakozás a BME eduroam hálózatához Setting up the BUTE eduroam network Csatlakozás a BME eduroam hálózatához Setting up the BUTE eduroam network Table of Contents Windows 7... 2 Windows 8... 6 Windows Phone... 11 Android... 12 iphone... 14 Linux (Debian)... 20 Sebők Márton

Részletesebben

Adatbázis alapú rendszerek gyakorlat Adatbázis alapú alkalmazásfejlesztés Java, C# környezetben

Adatbázis alapú rendszerek gyakorlat Adatbázis alapú alkalmazásfejlesztés Java, C# környezetben Adatbázis alapú rendszerek gyakorlat Adatbázis alapú alkalmazásfejlesztés Java, C# környezetben Java GUI készítése, Oracle kapcsolódás JDBC-vel A jelen anyagban egy egyszerűsített megközelítéssel vizsgáljuk

Részletesebben

INFORMATIKAI ALAPISMERETEK

INFORMATIKAI ALAPISMERETEK Informatikai alapismeretek emelt szint 1021 ÉRETTSÉGI VIZSGA 2011. május 13. INFORMATIKAI ALAPISMERETEK EMELT SZINTŰ ÍRÁSBELI ÉRETTSÉGI VIZSGA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ NEMZETI ERŐFORRÁS MINISZTÉRIUM

Részletesebben

Elemi alkalmazások fejlesztése IV.

Elemi alkalmazások fejlesztése IV. Structured Query Language (Struktúrált lekérdez ı nyelv) Relációs adatbázisok kezelésére kifejlesztett szabvány né Nacsa Rozália nacsa@inf.elte.hu Fejlesztı : MySQLAB weboldal: www.mysql.com MySQL installálása.

Részletesebben

Adatbázisok biztonsága

Adatbázisok biztonsága Adatbázisok biztonsága 13 1 Célkitőzések 1. Titoktartás (Secrecy): olyan felhasználó, akinek nincs joga, ne férjen hozzá az információkhoz. pl. egy diák ne láthassa más diák kreditjeit. 2. Sértetlenség

Részletesebben

A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni:

A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni: 1 Adatbázis kezelés 2. gyakorlat A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni: Táblák létrehozása,

Részletesebben

abkezel.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public class abkezel extends JFrame {

abkezel.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public class abkezel extends JFrame { Adatkezelés JDBC-vel 1 abkezel.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public class abkezel extends JFrame { private JTabbedPane jtp; private JPanel dp,

Részletesebben

B IT MAN 65/1. Adatbázis Rendszerek II. Ellenőrző kérdések APLSQL B IT MAN. v:

B IT MAN 65/1. Adatbázis Rendszerek II. Ellenőrző kérdések APLSQL B IT MAN. v: B IT MAN 65/1 Adatbázis Rendszerek II. Ellenőrző kérdések APLSQL B IT MAN v: 2016.02.27 Ellenőrző kérdések 1. B IT MAN 65/2 1. Egy bemenő paraméter nélküli tárolt rutin visszaad egy értéket. Ez a rutin:

Részletesebben

Táblakezelés: Open SQL Internal table. Tarcsi Ádám: Az SAP programozása 1.

Táblakezelés: Open SQL Internal table. Tarcsi Ádám: Az SAP programozása 1. Táblakezelés: Open SQL Internal table Tarcsi Ádám: Az SAP programozása 1. OPEN SQL Tarcsi Ádám, ELTE SAP Excellence Center: SAP programozás oktatóanyag 2 Open SQL Az Open SQL kulcsszavai: SELECT INSERT

Részletesebben

Adatbázis kezelés Delphiben. SQL lekérdezések

Adatbázis kezelés Delphiben. SQL lekérdezések Adatbázis kezelés Delphiben. SQL lekérdezések Structured Query Language adatbázisok kezelésére szolgáló lekérdező nyelv Szabályok: Utasítások tetszés szerint tördelhetők Utasítások végét pontosvessző zárja

Részletesebben

ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu

ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu Számonkérés 2 Papíros (90 perces) zh az utolsó gyakorlaton. Segédanyag nem használható Tematika 1. félév 3 Óra Dátum Gyakorlat 1. 2010.09.28.

Részletesebben

SQL*Plus. Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók

SQL*Plus. Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) közönséges felhasználók SQL*Plus Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP dolgozó), DEPT osztály) "közönséges" felhasználók Adatszótár: metaadatokat tartalmazó, csak olvasható táblák táblanév-prefixek:

Részletesebben

Együttes hozzárendelés

Együttes hozzárendelés Együttes hozzárendelés Együttes hozzárendelés Hozzárendelés: az a tevékenységet, amikor egy PL/SQLváltozónak egy SQL-utasításban adunk értéket. Együttes hozzárendelés: Egy kollekció minden elemének egyszerre

Részletesebben

Adatok szűrése, rendezése

Adatok szűrése, rendezése Adatok szűrése, rendezése Célkitűzések Szűrést kifejező lekérdezések végrehajtása A lekérdezés eredményének rendezése &változó használata isql*plus-ban futási időben megadható feltételek céljából A lista

Részletesebben

Adatbázis Rendszerek II. 3. SQL alapok

Adatbázis Rendszerek II. 3. SQL alapok Adatbázis Rendszerek II. 3. SQL alapok 22/1 B IT v: 2016.10.20 MAN Oracle adattípusok Szöveges adattípusok CHAR (1-2000) VARCHAR (1-4000) VARCHAR2 (1-4000, nemzeti karakterekhez) CLOB (max. 8 TB) NCLOB

Részletesebben

Objektum-relációs adatbázisok. Felhasználói típusok (User-Defined Types) Objektum ID-k Beágyazott táblák (Nested Tables)

Objektum-relációs adatbázisok. Felhasználói típusok (User-Defined Types) Objektum ID-k Beágyazott táblák (Nested Tables) Objektum-relációs adatbázisok Felhasználói típusok (User-Defined Types) Objektum ID-k Beágyazott táblák (Nested Tables) 1 Relációs és az O-O modell egyesítése Az O-O modell több érdekes adattípust támogat

Részletesebben

Adatbázis Rendszerek II. 1. SQL programozási felületek 39/1B IT MAN

Adatbázis Rendszerek II. 1. SQL programozási felületek 39/1B IT MAN Adatbázis Rendszerek II. 1. SQL programozási felületek 39/1B IT MAN B IT v: 2016.02.10 MAN SQL felületek Hatékony: SQL parancsok kiadására Eredmények megtekintésére Nehézkes: Nagyobb volumenű, rutintevékenységek

Részletesebben

II. év. Adatbázisok és számítógépek programozása

II. év. Adatbázisok és számítógépek programozása II. év Adatbázisok és számítógépek programozása A programozási ismeretek alapfogalmai a) algoritmus b) kódolás c) program a) algoritmus: elemi lépések sorozata, amely a következı tulajdonságokkal rendelkezik:

Részletesebben

ADATBÁZIS-KEZELÉS FÉLÉVES FELADAT

ADATBÁZIS-KEZELÉS FÉLÉVES FELADAT ÓBUDAI EGYETEM Neumann János Informatikai Kar Nappali Tagozat ADATBÁZIS-KEZELÉS FÉLÉVES FELADAT NÉV: MÁK VIRÁG NEPTUN KÓD: A DOLGOZAT CÍME: Jani bácsi székadatbázisa Beadási határidő: 14. oktatási hét

Részletesebben

Adabáziselérés ODBC-n keresztül utasításokkal C#-ban

Adabáziselérés ODBC-n keresztül utasításokkal C#-ban Adabáziselérés ODBC-n keresztül utasításokkal C#-ban 1. Előkészítés Access adatbázis lemásolása, ODBC DSN létrehozása Másoljuk le az alábbiakat: Mit Honnan Hova list.mdb p:\johanyák Csaba\Vizualis programozas\data\

Részletesebben

Programozás és adatbázis kezelés PHP ben

Programozás és adatbázis kezelés PHP ben Programozás és adatbázis kezelés PHP ben Készítette: Pető László I. A programozási környezet A PHP platformfüggetlen programozási nyelv. A szkriptek futtatása szerveroldalon történik. Ezt a szerepet leggyakrabban

Részletesebben

A könyv tartalomjegyzéke

A könyv tartalomjegyzéke A könyv tartalomjegyzéke Elıszó Bevezetés Adatbázis-kezelı rendszerek Adatmodellezés Alapfogalmak Egyedhalmaz, egyed Kapcsolat, kapcsolat-elıfordulás, kapcsolat típusa Tulajdonság, tulajdonságérték, értékhalmaz

Részletesebben

SQL OO elemei aktív komponensek

SQL OO elemei aktív komponensek Adatbázisok MSc 7. téma SQL OO elemei aktív komponensek UDT aktív elemek Az UDT egyik fontos jellemzője az egységbezárás, mely az állapot és viselkedés együttesét jelenti mezők UDT metódusok Az SQL szabvány

Részletesebben

GEIAL Kovács László. GEIAL Kovács László GEIAL Kovács László

GEIAL Kovács László. GEIAL Kovács László GEIAL Kovács László Adatbázis rendszerek I mysql kezelése ME- GEIAL Dr. Kovács LászlL szló DBMS alternatívák probléma méretem otthoni feladat egyéni vállalkozv llalkozás kis vállalat v Közép vállalatv nagyvállalat nemzetközi

Részletesebben

ADATBÁZISOK I. Az esetleges hibákat kérlek a csongor@csongorbokay.com címen jelezd! Utolsó módosítás: 2013. március 20.

ADATBÁZISOK I. Az esetleges hibákat kérlek a csongor@csongorbokay.com címen jelezd! Utolsó módosítás: 2013. március 20. ADATBÁZISOK I. Szerkesztette: Bókay Csongor Az esetleges hibákat kérlek a csongor@csongorbokay.com címen jelezd! Utolsó módosítás: 2013. március 20. Ez a Mű a Creative Commons Nevezd meg! - Ne add el!

Részletesebben

Bánsághi Anna anna.bansaghi@mamikon.net

Bánsághi Anna anna.bansaghi@mamikon.net ESEMÉNYVEZÉRELT PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 2. ELŐADÁS - C# ÁTTEKINTÉS - 2 2015 Bánsághi Anna 1 of 64 TEMATIKA I. C# ÁTTEKINTÉS II. WPF III. Modern UI 2015 Bánsághi Anna 2 of 64

Részletesebben

Statisztikai szoftverek Molnár Gábor József

Statisztikai szoftverek Molnár Gábor József Statisztikai szoftverek Molnár Gábor József SAS-ban megírt programok megvalósítása SQL-lel Bevezetés A SAS, statisztikai szoftver, egy önálló adatkezelési nyelvvel rendelkezik; ez a SAS BASE amely segítségével

Részletesebben

Database Systems II. ZH összefoglaló

Database Systems II. ZH összefoglaló Database Systems II. ZH összefoglaló 1) Kód az adatbázisban tárolva PSM CREATE PROCEDURE name(parameters) local declarations body PL/SQL CREATE (OR REPLACE) PROCEDURE name(parameters) local declarations

Részletesebben

Bevezetés: az SQL-be

Bevezetés: az SQL-be Bevezetés: az SQL-be Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 2.3. Relációsémák definiálása SQL-ben, adattípusok, kulcsok megadása 02B_BevSQLsemak

Részletesebben

Adatbázis Rendszerek II. 4. PLSQL Kurzorok, hibakezelés 53/1B IT MAN

Adatbázis Rendszerek II. 4. PLSQL Kurzorok, hibakezelés 53/1B IT MAN Adatbázis Rendszerek II. 4. PLSQL Kurzorok, hibakezelés 53/1B IT MAN B IT v: 2017.03.02 MAN A PL/SQL alapjai Adatok kezelése Kurzorok Hibakezelés 53/2 B IT MAN Adatok kezelése PL/SQL-ben Műveletek: Írás

Részletesebben

Novell Vibe OnPrem 3. 1 A termék áttekintése. Novell. 2010. december 08.

Novell Vibe OnPrem 3. 1 A termék áttekintése. Novell. 2010. december 08. Novell Vibe OnPrem 3 2010. december 08. Novell 1 A termék áttekintése A Vibe program korábbi verzióihoz képest a Novell Vibe OnPrem 3 verzió számos továbbfejlesztést tartalmaz mind a Vibe-felhasználók,

Részletesebben

Java Programozás 9. Gy: Java alapok. Adatkezelő 5.rész

Java Programozás 9. Gy: Java alapok. Adatkezelő 5.rész Java Programozás 9. Gy: Java alapok Adatkezelő 5.rész 15/1 B ITv: MAN 2018.04.22 A Keresés funkció Programlogika: 1. A keresés az etm táblamodellben fog keresni, és a találat rekordokat átmásolja egy másik

Részletesebben

Az SQL nyelv Structured Query Language (Struktúrált lekérdező nyelv)

Az SQL nyelv Structured Query Language (Struktúrált lekérdező nyelv) Az SQL nyelv Structured Query Language (Struktúrált lekérdező nyelv) Az SQL a relációs adatbázis-kezelő rendszerek ma legelterjedtebb szabványosított adatbáziskezelő nyelve. Az IBM dolgozta ki 1983-ban,

Részletesebben

SQL parancsok feldolgozása

SQL parancsok feldolgozása Az SQL nyelv SQL nyelv szerepe Sequental Query Language, deklaratív nyelv Halmaz orientált megközelítés, a relációs algebra műveleteinek megvalósítására Előzménye a SEQUEL (IBM) Algoritmus szerkezeteket

Részletesebben

Előszó. Bevezetés. Java objektumok leképzése relációs adatbázisokra OJB-vel Viczián István (viczus@freemail.hu) Viczián István

Előszó. Bevezetés. Java objektumok leképzése relációs adatbázisokra OJB-vel Viczián István (viczus@freemail.hu) Viczián István Java objektumok leképzése relációs adatbázisokra -vel Viczián István (viczus@freemail.hu) Előszó E cikk olyan haladó programozóknak nyújt segítséget, kik tisztában vannak a Java nyelvvel, és többször is

Részletesebben

Adatbázis használata PHP-ből

Adatbázis használata PHP-ből Adatbázis használata PHP-ből Adatbázis használata PHP-ből...1 Nyílt forráskódú adatbázisok...1 A mysql függvények...2 A mysqli függvények...4 Bináris adatok adatbázisban való tárolása...8 Adatbázis csatoló

Részletesebben