fbpx

ORACLE PL/SQL - Level 1

Rolul de Dev baze de date inseamna procese: de migrare, de transformare, de tratare erori, de optimizare, performanta date. Nu se poate Developer fara proceduri stocate, fara control flow-uri if, while sau fara pachete. Cum nu se poate performanta fara indecsi.

Desfasurare curs:

 

  • durata curs: 28 ore
  • conditii participare: sa se cunoasca cel putin 70% din notiunile de la cursul ORACLE SQL Querying
SESIUNI PROGRAMATE:
• curs la cerere
-
Nu este programată o sesiune momentan
  • Exercitii parctice pentru stabilizarea celor 6 clauze: SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY
  • Exercitii practice: JOINs
  • Exercitii practice: Design database: create table, constrangeri, alter table
  • Ce este un bloc de cod. Afisare mesaje.
  • Lucrul cu variabile: declarare, initializare, utilizare in exemple practice
  • Calcul dimanic variabile

Variabilele ocupa un rol important in activitatea de development databases si realizeaza trecerea la parametri pentru proceduri stocate.

  • Exercitii practice: calcule cu variabile in reporting
  • IF: controlul executiei unui cod SQL in functie de conditia/conditiile din IF
  • WHILE: executarea unui cod SQL pana la indeplinirea unei/unori conditii
  • WHILE in WHILE: parcurgerea/iterarea unui cod sql pana la indeplinirea unei conditi si „sarirea” in WHILE-ul superior pana la indeplinirea unei alte conditii din WHILE-ul superior
  • Aplicatii practice: incarcarea unui tabel cu istoric date + rularea ulterioara a incarcarile recurente lunare/zilnice

Proceduri Stocate:

 

  • Ce este o procedura stocata? Unde este utilizata – exemple.
  • Creare proceduri stocate cu calcule dinamice in corpul procedurii, proceduri stocate cu parametri transmisi de utilizator sau de aplicatii sau parametri default
  • Tipuri de parametri: optionali, obligatorii, default
  • Apelarea unei proceduri stocate in cadrul altei proceduri stocate
Functii definite de utilizator:
 
Diferenta dintre functii Built-In si functii UDF
  • Contruirea unei functii scalare / tabelare
  • Utilizarea functiilor in coduri SQL
 
Aplicatii practice/PROIECT: se va considera un user story de business, se va diviza in taskuri tehnice de: construire functii necesare, construire proceduri stocate, includerea unei functii in proceduri stocate

 

  • Ce sunt pachetele? Avantaje si structura (SPEC si BODY)
  • Creare pachet care include proceduri stocate si functii

PROIECT: Business-ul solicita un raport recurent cu anumite specificatii. Cum implementez tehnic utilizand proceduri stocate si functii in cadrul unui pachet?

Rolul de Developer Database presupune cunoasterea tipurilor de baze de date. In functie de tipul lor, se iau decizii de optimizare si performanta, de stocare date, istoric, cat timp istoric. 

O baza de date OLTP in general stocheaza datele pentru 1 zi.

O baza de date OLAP stocheaza intreg istoricul de date necesar rapoartelor, in general 2-3 ani de date.

  • Ce este o baza de date OLTP: structura, scop, istoric date
  • Ce este o baza de date OLAP: structura, scop, istoric date
  • OLTP versus OLAP

Rolul de Developer Database presupune cunoasterea sub ce forma stocam datele istoric in tabele. Acest lucru se indetifica in functie de solicitarile de business: se doreste imaginea clientilor din anul anterior sau doar statusul curent al clientilor? Raspunzand la intrebari de acest tip, putem cunoaste in ce fel sunt istorizate datele in tabele.

  • Tipuri de SCD
  • Exemple concrete pentru fiecare tip SCD

Dupa cunoasterea tipurilor de baze de date si tipurilor de istorizari, rolul de Database Developer implementeaza tehnic istorizarea datelor cu ajutorul procedurilor stocate, pachetelor si includerea MERGE statement pentru stocarea: stergerilor, modificarilor, inserturilor.

  • Comanda MERGE: utilizata pentru a capta modificarile dintr-o tabela si propagarea lor in alta tabela
  • Combinarea DML statements: INSERT, UPDATE, DELETE 
  • PROIECT: Business-ul solicita un raport cu vanzarile fiecarui client, cu mentiunea ca este pastrata imaginea clientului la un moment de timp. Raportul se cere a fi rulat la diverse momente de timp luand calcul istorizarea clientului (Exemplu: Un client se numea anul trecut ABC Trade, iar anul acesta se numeste Data Trade). Raportul trebuie sa aiba flexibilitatea rerularii (se va utiliza MERGE cu OUTPUT pt istorizare). Toate componentele vor fi integrate intr-un pachet

Performanta rularii scripturilor SQL „joaca” un rol important atat pentru rolul de Data Analyst/Reporting, cat si pentru rolul de Database Developer. 

Analiza codului SQL presupune: care sunt coloanele pentru join-uri, care sunt coloanele frecvente din WHERE. In functie de acest lucru stabilim indecsii necesari pentru coloane.

De asemenea, cunoasterea tipurilor de baze de date reprezinta un alt punct de analiza performanta cod sql: bazele de date OLTP trebuie sa fie performante la scriere si citire, in timp ce bazele de date OLAP trebuie sa performante la citire.

  • Analiza cererilor de business
  • Stabilirea PK, FK, Indecsi
  • Creare/stergere indecsi

  • Parcurgerea tuturor notiunilor predate intr-un proiect complet: cerinta de business, analiza cerinta, identificare solutie tehnica, implementare tehnica si testarea

Oferta de pret

Prețul cursului include suportul de curs și materialele didactice, prestația trainerului.

Pret: € 459 + TVA/pers;
Discount: 10% pentru PF incepand cu al doilea curs.

(codul de voucher nu este obligatoriu, se aplica doar in anumite cazuri)