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

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

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

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

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

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

Összefoglaló. <variable_name> [IN OUT IN OUT] <data_type> [:=<default_value>] ... <label_name>: <statements>... GOTO <label_name>;...

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

Haladó DBMS ismeretek 1

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:

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

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

Kalmár György Adatbázis alapú rendszerek

Tranzakciókezelés PL/SQL-ben

Adatbázis Rendszerek II. 6. PLSQL Triggerek 32/1B IT MAN

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

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

PL/SQL (folytatás) Kurzorok, függvények, eljárások

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

PL/SQL blokk. [címke] [DECLARE deklarációs utasítás(ok)] BEGIN végrehajtható utasítás(ok) [EXCEPTION kivételkezelő] END [név];

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

Adatbázis Rendszerek II. 3. PLSQL alapok 92/1B IT MAN

Együttes hozzárendelés

A trigger egy aktualizálási művelet esetén végrehajtandó programrészletet definiál. Alakja:

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

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 használat I. 5. gyakorlat

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

Adatbázisban tárolt kollekciók

Adatbázis rendszerek SQL nyomkövetés

Programozás I. gyakorlat

OOP: Java 8.Gy: Abstract osztályok, interfészek

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

ADATBÁZIS RENDSZEREK I BEADANDÓ

Jegyz könyv. Adatbázis-rendszerek II. Beadandó feladat. Miskolci Egyetem

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

Adatbázisok* tulajdonságai

LBRA6i integrált rendszer

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

Database Systems II. ZH összefoglaló

WEBFEJLESZTÉS 2. ADATBÁZIS-KEZELÉS, OSZTÁLYOK

Programozási nyelvek (ADA)

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

Kliens oldali SQL-API

SQL OO elemei aktív komponensek

Hozzunk ki többet abból amink van. Fehér Lajos

Programozási nyelvek (ADA)

Bevezetés a programozásba I 10. gyakorlat. C++: alprogramok deklarációja és paraméterátadása

Adattípusok. Max. 2GByte

Egyetemi könyvtári nyilvántartó rendszer

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

Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 4.ELŐADÁS. Adatbázis alapú alkalmazások készítése PHP-ben

3. Osztályok II. Programozás II

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

Adatbázis Rendszerek II. 3. SQL alapok

Java és web programozás

Adatbázis Rendszerek II. 7. PLSQL JOB-ok 25/1B IT MAN

AB1 ZH mintafeladatok. 6. Minősítse az állításokat! I-igaz, H-hamis

PL/SQL feladatok 8. gyakorlat

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

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

Az SQL*Plus használata

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

Adatbázis. AMP! (Apache + MySql + PHP) XAMPP, LAMP, MAMP, WAMP et cetera

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

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

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

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

és az instanceof operátor

Kivételkezelés 2. SQLCODE lehetséges értékei:

Adattípusok. Max. 2GByte

Java VIII. Az interfacei. és az instanceof operátor. Az interfészről általában. Interfészek JAVA-ban. Krizsán Zoltán

Adatbázisok elleni fenyegetések rendszerezése. Fleiner Rita BMF/NIK Robothadviselés 2009

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.

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.

Adatbázisok-I. előadás dr. Hajas Csilla (ELTE IK)

Programozás alapjai gyakorlat. 2. gyakorlat C alapok

SQLServer. DB Recovery modes

Spatial a gyakorlatban

SQL/PSM kurzorok rész

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

Java programozási nyelv 5. rész Osztályok III.

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

Java és web programozás

Adatbázis tartalmának módosítása

Vizuális programozás 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:

Adatbázisok I. Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER

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

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

Oracle Spatial. Térbeli adatot tartalmazó tábla: Geometry table Legalább 2 oszlopa van: Elsődleges kulcs, SDO_GEOMETRY típusú oszlop.

Alprogramok, paraméterátadás

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 haladó. Külső összekapcsolások, Csoportosítás/Összesítés, Beszúrás/Törlés/Módosítás, Táblák létrehozása/kulcs megszorítások

Elemi alkalmazások fejlesztése IV.

Mechatronika és mikroszámítógépek 2017/2018 I. félév. Bevezetés a C nyelvbe

Megtanuljuk, hogyan lehet egy web-alkalmazással adatbázishoz csatlakozni Pontosan megnézzük a PHP lehetőségeit o MySQL-hez o Oracle-höz

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

Triggerek. Olyan névvel ellátott adatbázisobjektumok, amelyek eseményorientált feldolgozást tesznek lehetővé

Adatbázis Rendszerek II. 4. Ea: MySQL Tárolt eljárások 110/1 B IT MAN

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

Átírás:

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észük egy interfészt biztosít, amelyen keresztül hozzáférhetünk a csomag eszközeihez. Törzsrészük tartalmazza a futtatható kódot. Csomag specifikációk Csomag törzs Package Package Body Nincs futtatható kód Az alprogramok nevei túlterhelhetők Összefügg a specifikációval A törzsben lehetnek privát változók 16/2 B IT MAN

Csomagok felépítése 1 1 Publikus változók Procedure A deklaráció 2 2 Publikus alprogramok deklarációi 3 3 Globális privát változók Procedure B definíció 5 4 4 Privát alprogramok Procedure A definíció 2 2 Publikus alprogramok implementációi 5 Privát alprogramok implementációi 16/3 B IT MAN

Csomagok létrehozása Létrehozásuk két külön paranccsal történik! Specifikációs rész: CREATE PACKAGE csomag_név IS -- Publikus terület -- publikus változók, típusok, kurzorok deklarációja -- alprogram specifikációk END [csomag_név]; Törzs rész: CREATE PACKAGE BODY csomag_név IS -- Privát terület -- privát változók, típusok, kurzorok deklarációja -- alprogram törzsek -- [inicializációs kifejezések] END [csomag_név]; 16/4 B IT MAN

Csomagok létrehozása Szövegszerkesztő Figyelmeztetés: A csomag létrehozása fordítási hibákkal fejeződött be. Show errors Szerkesztés 1 2 Text fájl Tárolás az adatbázisban Forráskód Fordítás P-kód A csomag létrejött. Futtatás 16/5 B IT MAN

Csomag példa 1. create or replace package csomag1 as x int:=5; procedure kiir; 1 2 create or replace package body csomag1 as procedure kiir as dbms_output.put_line('x= ' x); csomag1.x:=10; csomag1.kiir; csomag1.x:=10; csomag1.kiir; x= 10 16/6 x= 5 B IT MAN

Csomag példa 2. T3 kod adat create or replace package csomag2 as procedure t3beszur (a int); procedure t3beszur (a char); procedure t3beszur (a int, b char); create or replace package body csomag2 as procedure t3beszur (a int) as insert into t3 (kod) values(a); procedure t3beszur (a char) as insert into t3 (adat) values(a); procedure t3beszur (a int, b char) as insert into t3 values(a, b); 16/7 B IT MAN

Csomag példa 3. create or replace package csomag3 is cursor cur is select adat from t3; procedure kiir; T3 kod adat 1 Kiss Béla 2 Nagy Ödön 3 Fekete Joe 4 Fehér Jenő create or replace package body csomag3 is procedure kiir as nev varchar2(20); if cur%isopen then dbms_output.put_line('kurzor nyitva.'); else dbms_output.put_line('kurzor zárva. Megnyitás.'); open cur; end if; fetch cur into nev; dbms_output.put_line('név: ' nev); fetch cur into nev; dbms_output.put_line('név: ' nev); 16/8 B IT MAN

Csomag példa 3. T3 kod adat 1 Kiss Béla 2 Nagy Ödön 3 Fekete Joe 4 Fehér Jenő csomag3.kiir; csomag3.kiir; Kurzor zárva. Megnyitás. Név: Kiss Béla Név: Nagy Ödön Kurzor nyitva. Név: Fekete Joe Név: Fehér Jenő 16/9 B IT MAN

Autós példa 26. Az alábbi két alprogramot helyezzük el egy csomagban, és onnan hívjuk meg őket! create or replace procedure torol (x in number) as delete from auto where kor>x; create or replace function maxar return number as x number(8); select max(ar) into x from auto; return x; 16/10 B IT MAN

Autós példa 26. (folytatás) create or replace package aut_cs1 as procedure torol (x in number); function maxar return number; end aut_cs1; 16/11 B IT MAN

Autós példa 26. (folytatás) create or replace package body aut_cs1 as procedure torol (x in number) as delete from auto where kor>x; function maxar return number as x number(8); select max(ar) into x from auto; return x; end aut_cs1; 16/12 B IT MAN

Autós példa 26. (folytatás) Az eljárás és a függvény hívása a csomagból 16/13 B IT MAN

Órai feladatok 1. Készítsen egy UjTermek nevű tárolt eljárást, mely: - az egyes mezők értékét paraméterként kapja meg, - saját hibát dobva figyelmeztet (képernyőüzenettel), ha nem létező kategóriájú terméket akarnánk felvinni, - saját hibát dobva figyelmeztet (képernyőüzenettel), ha már létező azonosítójú terméket akarnánk felvinni. Készítsen egy TermekSzam nevű tárolt függvényt, mely a paraméterként névvel megadott kategóriájú termékek darabszámát adja vissza a Termék táblából. Pl. TermekSzam('Pia'); Készítsen egy KategoriLista nevű tárolt eljárást, mely kilistázza a képernyőre, hogy az egyes kategóriákban hány darab termék van. (Kurzorkezelés!) Helyezze el az elkészített alprogramokat egy TermekCsomag nevű csomagban, és sorra hívja meg a csomag egyes alprogramjait. 16/14 B IT MAN

Órai feladatok 2. Hozza létre az alábbi táblát: Szemely [ID int pk, Nev varchar(25), Fizetes int] Szúrjon be 4-5 rekordot a Szemely táblába. Készítsen egy tárolt eljárást (ModF), mely módosítja egy paraméterként megadott ID-jű személy fizetését egy paraméterként megadott értékre. Készítsen egy tárolt függvényt (KerN), mely visszaadja egy paraméterként megadott ID-jű személy nevét. A két alprogramot helyezze el egy csomagban (Sz_cs). Futtassa a csomagban lévő alprogramokat. 16/15 B IT MAN

VÉGE VÉGE 16/16 B IT MAN