100% satisfaction guarantee Immediately available after payment Both online and in PDF No strings attached 4.6 TrustPilot
logo-home
Summary

Samenvatting Databanken 2 - Stored Procedures

Rating
4.0
(1)
Sold
-
Pages
68
Uploaded on
06-01-2019
Written in
2018/2019

Uitgebreide samenvatting over Stored Procedures uit Databanken 2. Gericht op theorie, aangevuld met voorbeelden voor een makkelijkere verwerking van de leerstof.

Institution
Module











Whoops! We can’t load your doc right now. Try again or contact support.

Written for

Institution
Study
Module

Document information

Uploaded on
January 6, 2019
Number of pages
68
Written in
2018/2019
Type
Summary

Subjects

Content preview

DATABANKEN 2: STORED PROCEDURES
H1 : PL/SQL INTRODUCTIE

PL/SQL = Procedural Language / Structured Query Language

MOGELIJKHEDEN VAN SQL

SQL is nodig om een relationele databank te maken en te beheren:
o Objecten creëren en inhouden van tabellen wijzigen + opvragen
o Views, sequences, synoniemen, … creëren
o Database beveiligen

SQL is een taal gebaseerd op de verzamelingenleer:
o Rijen uit tabellen zitten in willekeurige volgorde
o In willekeurige volgorde opgevraagd en gewijzigd

SQL is een declaratieve taal:
o Je geeft WAT je wil bereiken, niet HOE
→ 4de generatietaal: hebben een bepaald doel

ONMOGELIJKHEDEN VAN SQL

o Geen variabelen voor tussenresultaten
o Geen procedurele elementen zoals IF of LOOP structuren
o Je kan geen volgorde afdwingen bij verwerken rijen (sinds willekeurig verwerkt)
o Constraints leggen slechts in beperkte mate business rules op aan tabelinhouden

OPLOSSINGEN VIA PL/SQL

o Variabelen declareren voor tussenresultaten
o Bevat procedurele elementen (IF, LOOP)
o D.m.v. cursors en collections rijen in een bepaalde volgorde laten verwerken
o Triggers bieden heel wat mogelijkheden om business rules op te leggen aan
tabelinhouden en om de toegang tot tabellen verder te beveiligen
o Packages schrijven
(om broncode van functies en procedures af te schermen van de gebruikers)
o Supplied packages beschikbaar
(voorgeprogrammeerd en bruikbaar in zelfgeschreven stored procedures)




1

,H2 : BASIS PL/SQL

PL/SQL BLOCK

Een PL/SQL programma bestaat uit 1 of meerdere PL/SQL blokken
Een PL/SQL blok bestaat (maximum) uit 3 delen:

o Declaratie deel
→ waarin variabelen, constanten, cursors, collections,
functies, procedures, exceptions worden gedeclareerd
o Uitvoerings deel
→ waarin de instructies worden opgegeven
o Exceptions deel
→ waarin foutsituaties worden opgevangen

CREATE OR REPLACE PROCEDURE procedurenaam
(parameterlijst)

IS {Declaratie deel}

BEGIN {Uitvoerings deel}

EXCEPTIONS {Exceptions deel}

END procedurenaam;

DECLARATIE DEEL

→ declaratie van o.a. variabelen, constanten, cursors, collections, procedures, functies

Hoe variabelen en constanten declareren?

variabelenaam [CONSTANT] datatype [NOT NULL] [{:=|DEFAULT} expressie];

Variabele naam:
→ laten beginnen met v_ (afspraak)

Datatype:
o Alle SQL-datatypes
o PLS_INTEGER
→ om gehele getallen binair te stockeren + om snel te rekenen
o BOOLEAN
→ 3-waardige logica: TRUE, FALSE en NULL
o Gebruik van %TYPE
→ voordeel: up-to-date datatype
→ nadeel: netwerkverkeer

DEFAULT of :=
→ om een initiele waarde toe te kennen



2

,CONSTANT:
→ gebruiken voor declaratie van een constante
→ verplicht initiële waarde
→ begint met c_ (afspraak)

NOT NULL:
→ verplicht initiële waarde

Voorbeelden:
v_aantal NUMBER(3) := 0;
c_percent CONSTANT NUMBER(3,2) DEFAULT 0.05;
v_mnr medewerkers.mnr%TYPE;
v_oud_mnr v_mnr%TYPE;

UITVOERINGS DEEL

→ bevat de instructies en begint met het woord BEGIN
→ elke instructie wordt afgesloten met “;”

Welke componenten kunnen we terugvinden in instructies?

Operatoren:
o Rekenkundig * / + - ** (** = exponentieel)
o Alfanumerisch || (|| = concatenatie)
o Vergelijkingsoperatoren < > = <= >= != <>
o IS NULL of IS NOT NULL
o BETWEEN … AND
o LIKE
o IN
o Logische operatoren AND, OR en NOT

Functies:
→ alle functies die we kennen uit SQL
(substr, instr, round, trunc, upper, lower, …)
→ behalve DECODE en GROEPSFUNCTIES
(count, sum, avg, max, min)

FOUT: v_max := MAX(lengte);
CORRECT: SELECT MAX(lengte) INTO v_max FROM cursussen;




3

, Programmabesturing:

De IF structuur:

IF logische expressie1
THEN commandoreeks1;
[
ELSIF logische expressie2
THEN commandoreeks2;
]
[
ELSE commandoreeks3;
]
END IF;

Richtlijnen bij het gebruik van IF statements:
o Let op de spelling van de key words! (Bv. ELSIF, END IF)
o PL/SQL werkt met een driewaardige logica (TRUE, FALSE, NULL)
→ wanneer een conditie NULL oplevert wordt er gehandeld als FALSE

De CASE structuur:

CASE variabele
WHEN expressie1
THEN commandoreeks1;
[
WHEN expressie2
THEN commandoreeks2;
]
[
ELSE commandoreeks3;
END CASE;

Richtlijnen bij het gebruik van CASE statements:
o PL/SQL werkt met een driewaardige logica (TRUE, FALSE, NULL)
→ wanneer een conditie NULL oplevert wordt er gehandeld als FALSE
o Als er geen ELSE tak is opgenomen en geen van de (logische) expressies leidt tot
TRUE, dan stopt het programma met een foutmelding

ORA-06592: CASE not found while executing CASE statement

Bemerkingen rond het gebruik van NULL waarden bij condities:
o Enkelvoudige condities waarbij NULLs betrokken zijn resulteren steeds in NULL
o De logische operator NOT toegepast op NULL geeft steeds NULL terug




4

Reviews from verified buyers

Showing all reviews
6 year ago

4.0

1 reviews

5
0
4
1
3
0
2
0
1
0
Trustworthy reviews on Stuvia

All reviews are made by real Stuvia users after verified purchases.

Get to know the seller

Seller avatar
Reputation scores are based on the amount of documents a seller has sold for a fee and the reviews they have received for those documents. There are three levels: Bronze, Silver and Gold. The better the reputation, the more your can rely on the quality of the sellers work.
DeKeyser Karel de Grote-Hogeschool
Follow You need to be logged in order to follow users or courses
Sold
63
Member since
7 year
Number of followers
42
Documents
19
Last sold
3 months ago
Toegepaste Informatica Samenvattingen

4.1

20 reviews

5
5
4
13
3
1
2
0
1
1

Recently viewed by you

Why students choose Stuvia

Created by fellow students, verified by reviews

Quality you can trust: written by students who passed their exams and reviewed by others who've used these revision notes.

Didn't get what you expected? Choose another document

No problem! You can straightaway pick a different document that better suits what you're after.

Pay as you like, start learning straight away

No subscription, no commitments. Pay the way you're used to via credit card and download your PDF document instantly.

Student with book image

“Bought, downloaded, and smashed it. It really can be that simple.”

Alisha Student

Frequently asked questions