Subprograme şi pachete PL/SQL

Size: px
Start display at page:

Download "Subprograme şi pachete PL/SQL"

Transcription

1 Subprograme şi pachete PL/SQL Subprograme PL/SQL Subprogramele sunt blocuri PL/SQL care au nume, acceptă parametri şi pot fi apelate din alte blocuri PL/SQL. Subprogramele pot fi declarate ca proceduri sau funcţii, în funcţie de operaţiile efectuate: o procedură execută o acţiune, iar o funcţie calculează o valoare. Subprogramele se pot stoca la nivelul bazei de date sau la nivelul aplicaţiilor. Tip bloc Descriere Disponibilitate Bloc anonim Bloc PL/SQL fără nume, inclus în aplicaţie sau lansat interactiv. în toate mediile PL/SQL Procedură şi funcţie stocată Blocuri PL/SQL cu nume ce sunt stocate în baza de date, pot accepta parametri şi pot fi apelate pe baza Server Oracle Procedură şi funcţie stocată în aplicaţie Pachet Declanşator stocat în baza de date Declanşator stocat în aplicaţie numelui. Blocuri PL/SQL cu nume care sunt stocate fie în aplicaţiile dezvoltate cu Developer/2000, fie în biblioteci şi care pot fi apelate pe baza numelui. Modul PL/SQL care grupează proceduri, funcţii sau identificatori. Bloc PL/SQL asociat cu un tabel al bazei de date şi care se execută la fiecare apel al unei instrucţiuni LMD. Bloc PL/SQL asociat cu un eveniment al aplicaţiei şi care este lansat automat în momentul apariţiei respectivului eveniment. Utilizarea subprogramelor oferă o serie de avantaje, cum ar fi: Modulele Developer/2000 Server Oracle, Developer/2000 Server Oracle Developer/2000 extensibilitate orice set de instrucţiuni PL/SQL poate fi organizat sub forma unui subprogram al cărui scop este de a deservi scopurilor utilizatorului; modularizare un program poate fi segmentat în unităţi logice de cod (module) uşor de gestionat reutilizare - un subprogram validat poate fi utilizat în diverse aplicaţii. Deoarece schimbarea definiţiei sale afectează doar subprogramul (nu şi aplicaţiile apelante), este facilitată operaţia de gestiune. abstractizare utilizarea unui subprogram presupune ca utilizatorul să ştie ce face acel subprogram, fără a fi necesară cunoaşterea detaliilor de implementare. Asemenea blocurilor PL/SQL anonime, subprogramele sunt structurate în 3 părţi: 1. secţiunea declarativă (opţională) conţine declaraţii de tipuri utilizator, cursori, constante, variabile, excepţii şi subprograme 2. secţiunea executabilă (obligatorie) conţine instrucţiuni SQL şi PL/SQL 3. secţiunea de tratare a excepţiilor (opţională) conţine codul aferent tratării excepţiilor generate pe parcursul execuţiei subprogramului Proceduri PL/SQL O procedură este un subprogram ce execută o anumită acţiune şi este definită cu ajutorul următoarei sintaxe: [CREATE [OR REPLACE]] PROCEDURE nume_procedura[(parametru[, parametru])] {IS AS}

2 [declaratii locale] instructiuni [EXCEPTION handler-e de exceptii] END [nume_procedura]; unde: - parametru respectă sintaxa nume_parametru mod tip_date [{:= DEFAULT} expresie] - cuvântul cheie opţional CREATE permite crearea unei proceduri stocate în baza de date - mod poate avea una din valorile: IN, OUT sau IN OUT. Aceste trei tipuri de parametru formal sunt discutate într-un subcapitol separat. O procedură este formată din două părţi: 1. specificaţia procedurii defineşte numele şi parametrii acesteia; este cuprinsă între cuvântul cheie PROCEDURE şi numele procedurii sau lista de parametri; 2. corpul procedurii conţine blocul PL/SQL care este executat în momentul lansării în execuţie a procedurii; este cuprins între cuvintele cheie IS / AS şi END. Secţiunea declarativă a unei proceduri este cuprinsă între cuvintele cheie IS şi. Spre deosebire de blocurile anonime, din această secţiune lipseşte cuvântul cheie DECLARE. PROCEDURE marire_sal (emp_id INTEGER, suma REAL) IS -- sectiunea declarativa a procedurii -- de remarcat absenta din sintaxa a cuvintului cheie DECLARE sal_curent REAL; -- sectiunea executabila SELECT sal INTO sal_curent FROM emp WHERE empno = emp_id; DBMS_OUTPUT.PUT_LINE( Salariul este sal_curent); UPDATE emp SET sal = sal + suma WHERE empno = emp_id; END marire_sal; În momentul apelării, procedura marire_sal acceptă ca argument un număr de angajat şi o valoare reprezentând mărirea salarială. Numărul angajatului este utilizat pentru a selecta salariul curent din tabelul emp. Dacă salariul său este NULL se va tipări un mesaj. În caz contrar se actualizează salariul. Procedura declarată mai sus poate fi apelată dintr-un alt bloc PL/SQL astfel: DECLARE marire_sal(emp_id, sal); -- apel procedura -- emp_id si sal sunt variabile declarate in sectiunea DECLARE si initializate Eliminarea unei proceduri stocate (creată cu instrucţiunea CREATE PROCEDURE) se face cu: DROP PROCEDURE nume_procedura_stocata;

3 uncţii PL/SQL Funcţiile sunt subprograme PL/SQL utilizate, în general, pentru a calcula o valoare. Structura unei funcţii este asemănătoare structurii unei proceduri, singura diferenţă constând în faptul că o funcţie trebuie să conţină o instrucţiune RETURN. Sintaxa ce permite crearea unei funcţii este următoarea: [CREATE [OR REPLACE]] FUNCTION nume_func[(parametru[, parametru])] RETURN tip_data {IS AS} [declaratii locale] instructiuni PL/SQL [EXCEPTION handler-e de exceptii] END [nume_func]; Clauza opţională CREATE permite crearea unei funcţii stocate în baza de date, caz în care instrucţiunea poate fi executată şi de la promptul SQL*Plus. Exemplu: Următoarea funcţie primeşte ca argumente un cod angajat, un salariu minim şi unul maxim. Pe baza codului este selectat salariul angajatului, iar dacă salariul se află între cele două limite (min_sal şi max_sal) atunci funcţia returnează TRUE. Altfel returnează FALSE. FUNCTION check_sal (emp_id NUMBER, min_sal REAL, max_sal REAL) RETURN boolean IS v_sal REAL; SELECT sal INTO v_sal FROM emp WHERE empno = emp_id; RETURN (v_sal >= min_sal) AND (v_sal <= max_sal); Eliminarea unei proceduri stocate din baza de date se face cu instrucţiunea DROP FUNCTION nume_functie; Declararea subprogramelor Un subprogram poate fi declarat în orice bloc anonim, subprogram sau pachet. Singura constrângere este ca subprogramul să fie declarat după toate variabilele blocului părinte. Datorită faptului că PL/SQL cere ca un identificator să fie declarat înainte de utilizare, următorul bloc PL/SQL va genera eroare în momentul execuţiei deoarece procedura p1 apelează procedura p2, care nu a fost încă declarată. DECLARE PROCEDURE p1() IS p2();

4 PROCEDURE p2() IS p1(); Problema nu se rezolvă dacă inversăm declaraţia procedurii p1 cu cea a procedurii p2, deoarece p2 apelează la rândul ei procedura p1. Soluţia constă în declararea în avans a procedurii p2 (specificaţia), urmând ca ulterior să fie declarată complet (specificaţie + corp). DECLARE PROCEDURE p2(); -- declaratia in avans a procedurii p2 contine doar specificatia procedurii PROCEDURE p1() IS PROCEDURE p2() IS Notaţia poziţională şi notaţia prin nume Numele parametrilor din declaraţia unui subprogram (procedură sau funcţie) sunt parametri formali, în timp ce variabilele plasate în lista de parametri a apelului unui subprogram sunt parametri actuali. La apelul unui subprogram, asocierea între parametrii actuali şi cei formali poate fi indicată prin utilizarea notaţiei poziţionale sau a notaţiei prin nume. Notaţia poziţională realizează corespondenţa între un parametru actual şi parametrul formal corespunzător prin poziţia acestuia din urmă în lista de parametri din specificaţia subprogramului. Pentru exemplificare să considerăm următoarea procedură stocată: CREATE OR REPLACE PROCEDURE test (dept_no IN NUMBER DEFAULT NULL, out_str OUT VARCHAR2, run_date IN DATE DEFAULT SYSDATE) IS out_str := dept_no, run_date; Apelul test(12, v_mgr) utilizează notaţia poziţională, în sensul că valoarea 12 este asociată parametrului de intrare dept_no, variabila v_mgr este asociată parametrului de ieşire out_str, iar pentru parametrul run_date nu se specifică o valoare (în acest caz se va utiliza pentru parametrul run_date valoarea implicită SYSDATE data curentă a sistemului). Notaţia prin nume permite stabilirea explicită a corespondenţei între parametrul actual şi cel formal. Astfel, apelul test(out_str => v_mgr, dept_no => 12) pune în corespondenţă parametrul out_str cu variabila v_mgr şi parametrul dept_no cu valoarea 12. De notat că parametrii actuali pot apare în orice ordine în apelul subprogramului dacă se utilizează notaţia prin nume. Avantajul acestei notaţii constă în aceea că programatorul poate specifica doar o listă parţială de parametri, omiţând parametrii ce au valori implicite. Oracle permite şi o notaţie combinată, singura regulă ce trebuie respectată este ca notaţia poziţională să o preceadă pe cea prin nume. Astfel, apelul test(out_str => v_mgr, 12) va genera eroare.

5 Tipuri de parametri formali Un parametru de tip IN permite pasarea de valori către subprogramul apelat. Deoarece un parametru IN se comportă ca o constantă este interzisă atribuirea unei valori parametrului respectiv. De exemplu, următoarea atribuirea generează eroare de compilare: PROCEDURE cont_debit(id_cont IN INTEGER, suma IN REAL) IS suma_min CONSTANT REAL DEFAULT 10.0; comision CONSTANT REAL DEFAULT 0.50; IF suma < suma_min THEN suma := suma + comision; -- se generează eroare de compilare deoarece tipul END IF; -- param. suma este IN END cont_debit; Parametrul actual corespunzător unui parametru formal IN poate fi o constantă, un literal, o variabilă iniţializată sau o expresie. Pentru un parametru IN se poate specifica o valoare implicită. Un parametru de tip OUT permite returnarea de valori către programul apelant şi se comportă asemeni unei variabile locale. Se poate modifica valoarea unui parametru OUT sau se poate referi parametrul în orice mod, aşa cum se observă şi din exemplul următor: PROCEDURE calc_bonus (emp_id IN INTEGER, bonus OUT REAL) IS data_ang DATE; SELECT sal * 0.10, hiredate INTO bonus, data_ang FROM emp WHERE empno = emp_id; IF MONTHS_BETWEEN(SYSDATE, data_ang) > 60 THEN bonus := bonus + 500; END IF; END calc_bonus; Parametrul actual corespunzător unui parametru formal OUT trebuie să fie o variabilă; dacă este o constantă sau o expresie se generează eroare. Înainte de părăsirea subprogramului trebuie asignate explicit valori tuturor parametrilor OUT, în caz contrar aceştia vor avea valori NULL. Un parametru IN OUT permite pasarea de valori către subprogram şi returnarea de valori către programul apelant. Parametrul actual corespunzător unui parametru IN OUT trebuie să fie o variabilă; dacă este o constantă sau o expresie se generează eroare. Proceduri şi funcţii stocate Procedurile stocate sunt create cu instrucţiunea CREATE PROCEDURE, iar funcţiile stocate cu instrucţiunea CREATE FUNCTION. Utilizarea instrucţiunii CREATE OR REPLACE are ca efect ştergerea subprogramului (dacă există deja) şi recrearea lui în baza de date. Ambele tipuri de subprograme permit aplicaţiilor să execute o parte din funcţii pe server, ceea ce conduce la îmbunătăţirea considerabilă a performanţelor. Diferenţa dintre un subprogram stocat şi un subprogram declarat într-un bloc PL/SQL (subprogram local) este că subprogramul stocat poate fi apelat din orice aplicaţie, în timp ce un subprogram local poate fi apelat doar in blocul părinte. Funcţiile şi procedurile trebuie folosite întotdeauna pentru a creşte modularitatea codului scris. Dacă există o porţiune de cod care se repetă în interiorul unui bloc PL/SQL trebuie avută în vedere posibilitatea includerii lui într-o

6 funcţie sau procedură locală. Dacă aceasta trebuie să fie accesibilă altor aplicaţii trebuie creată în baza de date o procedură, respectiv funcţie stocată. Pachete Un pachet este o colecţie de obiecte corelate logic ce sunt stocate în baza de date şi partajează variabile comune, precum şi proceduri sau funcţii locale. Un pachet este alcătuit din două componente: 1. specificaţia pachetului conţine informaţii despre conţinutul acestuia (definiţii de constante, variabile, cursori, subprograme); definiţiile ce apar în specificaţia unui pachet sunt publice, ele fiind vizibile altor aplicaţii. 2. corpul pachetului - defineşte cursorii şi subprogramele definite în specificaţia pachetului, conţinând detalii de implementare şi declaraţii private ce nu pot fi accesate de alte aplicaţii. Corpul pachetului este opţional dacă în specificaţie nu sunt declarate subprograme sau cursori. Obiectele care nu sunt declarate în specificaţie sunt locale pachetului (obiecte private). După secţiunea declarativă poate exista o secţiunea executabilă, ce conţine cod de iniţializare care este executat când pachetul este referit pentru prima dată într-o sesiune. Specificaţia şi corpul pachetului sunt compilate separat şi sunt stocate ca două obiecte distincte în dicţionarul de date. Sintaxa pentru crearea unui pachet este următoarea: CREATE [OR REPLACE] PACKAGE nume_pachet {IS AS} [def_tip_colectie ] [def_tip_inregistrare ] [declaratie_colectie ] [declaratie_constanta ] [declaratie_exceptie ] [declaratie_inregistrare ] [declaratie_variabila ] [specificatie_cursor ] [specificatie_functie ] [specificatie_procedura ] END [nume_pachet]; [CREATE [OR REPLACE] PACKAGE BODY nume_pachet {IS AS} [def_tip_colectie ] [def_tip_inregistrare ] [declaratie_colectie ] [declaratie_constanta ] [declaratie_exceptie ] [declaratie_inregistrare ] [declaratie_variabila ] [corp_cursor ] [corp_functie ] [corp_procedura ] [ instructiuni] END [nume_pachet];] Prima instrucţiune creează specificaţia pachetului, iar a doua corpul pachetului. Exemplul următor creează pachetul my_pack.

7 CREATE OR REPLACE PACKAGE my_pack IS PROCEDURE p(x NUMBER); FUNCTION f RETURN VARCHAR2; var1 NUMBER; var2 VARCHAR2(20); END my_pack; / CREATE OR REPLACE PACKAGE BODY my_pack IS PROCEDURE p(x NUMBER) IS var1 := x; END p; FUNCTION f RETURN VARCHAR2 IS var2 := HELLO ; RETURN var2 TO_CHAR(var1); END f; DBMS_OUTPUT.PUT_LINE( Pachetul my_pack a fost referit! ); END my_pack; / Liniile 1 6 creează specificaţia pachetului, iar liniile 8 20 corpul pachetului. Deoarece în specificaţia pachetului sunt declarate două subprograme (procedura p şi funcţia f) şi două variabile (var1 şi var2), aceste componente sunt accesibile altor programe. Procedurile şi funcţiile declarate în specificaţie trebuie să apară în corpul pachetului, în caz contrar se generează eroare. Penultima linie conţine codul ce va fi executat atunci când se va referi pentru prima dată pachetul my_pack. Un apel la un pachet va fi executat de server în trei paşi: 1. se verifică dreptul de acces al utilizatorului se confirmă că utilizatorul are dreptul să execute subprogramul; 2. se verifică validitatea subprogramului apelat se verifică în dicţionarul de date dacă subprogramul este valid sau nu. Dacă obiectul este invalid, el este automat recompilat înainte de a fi executat; 3. se execută subprogramul. Pentru a face referire la subprogramele şi obiectele dintr-un pachet se utilizează notaţia cu punct: nume_pachet.nume_variabila nume_pachet.nume_subprogram În exemplul următor este ilustrat modul de utilizare a pachetului my_pack: / my_pack.p(1); DBMS_OUTPUT.PUT_LINE(my_pack.f); Pachetul my_pack a fost referit! HELLO 1 PL/SQL procedure successfully completed Pentru a recompila un pachet se utilizează comanda ALTER PACKAGE împreună cu cuvântul cheie COMPILE. Această cerere explicită de recompilare elimină necesitatea recompilării

8 implicite în timpul execuţiei şi previne apariţia oricărei erori de compilare asociate execuţiei, precum şi scăderea performanţelor. Prin recompilarea unui pachet se recompilează toate obiectele definite în cadrul său. Următoarele două comenzi recompilează corpul pachetului my_pack, respectiv întregul pachet. ALTER PACKAGE my_pack COMPILE BODY; ALTER PACKAGE my_pack COMPILE PACKAGE; Un pachet/subprogram se consideră invalid dacă, de la ultima compilare a pachetului, respectiv subprogramului: unul sau mai multe obiecte referite în subprogram/pachet (tabel, vedere, subprogram) au fost modificate sau eliminate; utilizatorului proprietar i-a fost revocat un privilegiu necesar pachetului/subprogramului; Un pachet/subprogram este valid dacă nu a fost invalidat de una din operaţiile menţionate mai sus. La apelul unui subprogram valid, de sine stătător sau împachetat, se execută codul compilat. Dacă subprogramul este invalid, înainte de execuţie va fi recompilat automat. Afişarea informaţiilor referitoare la obiectele din baza de date Pentru a obţine informaţii despre subprogramele/pachetele create de un utilizator se pot interoga următoarele vederi din dicţionarul de date: USER_OBJECTS, USER_OBJECT_SIZE, USER_SOURCE. Coloana STATUS din vederea USER_OBJECTS precizează dacă un anumit obiect este valid sau invalid. Pentru a vizualiza toate obiectele stocate în schema utilizatorului curent, precum şi mărimea acestora se interoghează vederea USER_OBJECT_SIZE. Coloana TEXT din vederea USER_SOURCE conţine un rând pentru fiecare linie de cod sursă din obiectul stocat, iar coloana LINE reprezintă numărul liniei. Vederea USER_ERRORS poate fi interogată pentru a găsi informaţii despre obiectele stocate a căror compilare a eşuat. O alternativă la interogarea acestei vederi constă în utilizarea comenzii show errors, care va afişa erorile generate la compilare. În toate vederile menţionate anterior (cu excepţia vederii USER_OBJECTS), coloana NAME reprezintă numele obiectului, iar coloana TYPE tipul său (procedură, funcţie, specificaţie pachet, corp pachet). În vederea USER_OBJECTS coloanele corespondente sunt denumite OBJECT_NAME, respectiv OBJECT_TYPE. Următoarea interogare afişează numele, tipul şi starea obiectelor stocate de tip procedură, funcţie şi pachet. SELECT object_name, object_type, status FROM user_objects WHERE object_type IN ('PROCEDURE','FUNCTION','PACKAGE','PACKAGE BODY'); OBJECT_NAME OBJECT_TYPE STATUS TEST PROCEDURE VALID CHECK_SAL FUNCTION VALID MY_PACK PACKAGE VALID MY_PACK PACKAGE BODY VALID MARIRE_SAL PROCEDURE VALID

9 Probleme 1. Creaţi tabelul vid employee, având aceeaşi structură ca tabelul emp. 2. Scrieţi un bloc PL/SQL anonim care să insereze în tabelul employee o înregistrare, valorile atributelor fiind introduse de la tastatură. Operaţia de inserare în tabel va fi efectuată de o procedură locală. 3. Scrieţi un bloc PL/SQL anonim care să afişeze numărul de angajaţi din tabelul emp ce lucrează într-un anumit departament, numărul departamentului fiind introdus de la tastatură. Va fi utilizată o funcţie locală care, primind un număr de departament, returnează numărul de angajaţi din acel departament. 4. Ştergeţi tabelul employee creat la punctul 1. Creaţi un nou tabel employee ce conţine aceleaşi înregistrări ca tabelul emp. Creaţi tabelul jurnal ce va conţine număr angajat, nume angajat, salariu vechi, salariu nou şi data modificării salariului. Se vor alege nume şi tipuri de date convenabile pentru cele cinci atribute. 5. Scrieţi o procedură stocată care măreşte cu 20% salariile angajaţilor din tabelul employee ce lucrează în departamentul furnizat ca parametru. Pentru fiecare înregistrare modificată inseraţi în tabelul jurnal o înregistrare ce conţine numărul şi numele angajatului, salariul vechi, salariul nou şi data modificării salariului (cu ajutorul funcţiei SYSDATE). Testaţi procedura scrisă. 6. Scrieţi o funcţie stocată care, primind ca parametru un număr de departament şi o sumă, returnează numărul de angajaţi din departament ce au comisionul mai mare decât valoarea pasată ca parametru. Se vor utiliza datele din tabelul employee. 7. Implementaţi pachetul my_pack care conţine următoarele componente: o procedură care afişează numele angajaţilor din tabelul employee având o anumită funcţie, funcţia fiind dată de parametrul procedurii. Dacă nu este găsit nici un angajat se va afişa un mesaj corespunzător. o procedură care şterge o înregistrare din tabelul employee, împreună cu înregistrarea corespunzătoare (dacă aceasta există) din tabelul jurnal. Ştergerea se face pe baza numărului de înregistrare furnizat ca parametru. Dacă nu există angajatul precizat se va afişa un mesaj de eroare. o funcţie care să returneze numerele departamentelor din tabelul employee şi salariile medii pe fiecare departament; o variabilă care memorează numărul de apelări ale celor trei subprograme de mai sus. 8. Testaţi pachetul de la punctul 7.

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Proiect nr. 154/323 cod SMIS 4428 cofinanțat de prin Fondul European de Dezvoltare Regională Investiții pentru viitorul

More information

Proiectarea bazelor de date # 11. PL/SQL Funcții în PL/SQL (partea a II-a) Adrian Runceanu

Proiectarea bazelor de date # 11. PL/SQL Funcții în PL/SQL (partea a II-a) Adrian Runceanu Proiectarea bazelor de date # 11 PL/SQL Funcții în PL/SQL (partea a II-a) 2018 Adrian Runceanu www.runceanu.ro/adrian Curs 11 Funcţii în PL/SQL (partea II) Proiectarea bazelor de date 2 Cuprins Funcţii

More information

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Proiect nr. 154/323 cod SMIS 4428 cofinanțat de prin Fondul European de Dezvoltare Regională Investiții pentru viitorul

More information

Titlul lucrării propuse pentru participarea la concursul pe tema securității informatice

Titlul lucrării propuse pentru participarea la concursul pe tema securității informatice Titlul lucrării propuse pentru participarea la concursul pe tema securității informatice "Îmbunătăţirea proceselor şi activităţilor educaţionale în cadrul programelor de licenţă şi masterat în domeniul

More information

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Proiect nr. 154/323 cod SMIS 4428 cofinanțat de prin Fondul European de Dezvoltare Regională Investiții pentru viitorul

More information

:= 950; BEGIN DELETE FROM

:= 950; BEGIN DELETE FROM Cursori în PLSQL La fiecare execuţie a unei instrucţiuni SQL serverul Oracle deschide o zonă de memorie în care este analizată şi executată instrucţiunea. Această zonă de memorie se numeşte cursor. Există

More information

Metrici LPR interfatare cu Barix Barionet 50 -

Metrici LPR interfatare cu Barix Barionet 50 - Metrici LPR interfatare cu Barix Barionet 50 - Barionet 50 este un lan controller produs de Barix, care poate fi folosit in combinatie cu Metrici LPR, pentru a deschide bariera atunci cand un numar de

More information

Lucrarea de laborator nr. 4

Lucrarea de laborator nr. 4 Metode merice - Lucrarea de laborator 4 Lucrarea de laborator nr. 4 I. Scopul lucrării Elemente de programare în MAPLE II. III. Conţinutul lucrării 1. Atribuirea. Decizia. Structuri repetitive. 2. Proceduri

More information

Versionare - GIT ALIN ZAMFIROIU

Versionare - GIT ALIN ZAMFIROIU Versionare - GIT ALIN ZAMFIROIU Controlul versiunilor - necesitate Caracterul colaborativ al proiectelor; Backup pentru codul scris Istoricul modificarilor Terminologie și concepte VCS Version Control

More information

Reflexia şi refracţia luminii. Aplicaţii. Valerica Baban

Reflexia şi refracţia luminii. Aplicaţii. Valerica Baban Reflexia şi refracţia luminii. Aplicaţii. Sumar 1. Indicele de refracţie al unui mediu 2. Reflexia şi refracţia luminii. Legi. 3. Reflexia totală 4. Oglinda plană 5. Reflexia şi refracţia luminii în natură

More information

Procesarea Imaginilor

Procesarea Imaginilor Procesarea Imaginilor Curs 11 Extragerea informańiei 3D prin stereoviziune Principiile Stereoviziunii Pentru observarea lumii reale avem nevoie de informańie 3D Într-o imagine avem doar două dimensiuni

More information

Structura și Organizarea Calculatoarelor. Titular: BĂRBULESCU Lucian-Florentin

Structura și Organizarea Calculatoarelor. Titular: BĂRBULESCU Lucian-Florentin Structura și Organizarea Calculatoarelor Titular: BĂRBULESCU Lucian-Florentin Chapter 3 ADUNAREA ȘI SCĂDEREA NUMERELOR BINARE CU SEMN CONȚINUT Adunarea FXP în cod direct Sumator FXP în cod direct Scăderea

More information

REVISTA NAŢIONALĂ DE INFORMATICĂ APLICATĂ INFO-PRACTIC

REVISTA NAŢIONALĂ DE INFORMATICĂ APLICATĂ INFO-PRACTIC REVISTA NAŢIONALĂ DE INFORMATICĂ APLICATĂ INFO-PRACTIC Anul II Nr. 7 aprilie 2013 ISSN 2285 6560 Referent ştiinţific Lector univ. dr. Claudiu Ionuţ Popîrlan Facultatea de Ştiinţe Exacte Universitatea din

More information

Proceduri stocate. Crearea procedurilor stocate. Varianta 1 În Management Studio se dă clic pe New Query ca în imaginea de mai jos: Fig.

Proceduri stocate. Crearea procedurilor stocate. Varianta 1 În Management Studio se dă clic pe New Query ca în imaginea de mai jos: Fig. Proceduri stocate Crearea procedurilor stocate. Varianta 1 În Management Studio se dă clic pe New Query ca în imaginea de mai jos: Fig. 1 Odată cu deschiderea editorului SQL, apare și bara de instrumente

More information

2. Setări configurare acces la o cameră web conectată într-un router ZTE H218N sau H298N

2. Setări configurare acces la o cameră web conectată într-un router ZTE H218N sau H298N Pentru a putea vizualiza imaginile unei camere web IP conectată într-un router ZTE H218N sau H298N, este necesară activarea serviciului Dinamic DNS oferit de RCS&RDS, precum și efectuarea unor setări pe

More information

Modalitǎţi de clasificare a datelor cantitative

Modalitǎţi de clasificare a datelor cantitative Modalitǎţi de clasificare a datelor cantitative Modul de stabilire a claselor determinarea pragurilor minime şi maxime ale fiecǎrei clase - determinǎ modul în care sunt atribuite valorile fiecǎrei clase

More information

ARBORI AVL. (denumiti dupa Adelson-Velskii si Landis, 1962)

ARBORI AVL. (denumiti dupa Adelson-Velskii si Landis, 1962) ARBORI AVL (denumiti dupa Adelson-Velskii si Landis, 1962) Georgy Maximovich Adelson-Velsky (Russian: Гео ргий Макси мович Адельсо н- Ве льский; name is sometimes transliterated as Georgii Adelson-Velskii)

More information

Subiecte Clasa a VI-a

Subiecte Clasa a VI-a (40 de intrebari) Puteti folosi spatiile goale ca ciorna. Nu este de ajuns sa alegeti raspunsul corect pe brosura de subiecte, ele trebuie completate pe foaia de raspuns in dreptul numarului intrebarii

More information

Textul si imaginile din acest document sunt licentiate. Codul sursa din acest document este licentiat. Attribution-NonCommercial-NoDerivs CC BY-NC-ND

Textul si imaginile din acest document sunt licentiate. Codul sursa din acest document este licentiat. Attribution-NonCommercial-NoDerivs CC BY-NC-ND Textul si imaginile din acest document sunt licentiate Attribution-NonCommercial-NoDerivs CC BY-NC-ND Codul sursa din acest document este licentiat Public-Domain Esti liber sa distribui acest document

More information

Funcţii grup şi clauzele GROUP BY, HAVING. Operatorii ROLLUP şi CUBE.

Funcţii grup şi clauzele GROUP BY, HAVING. Operatorii ROLLUP şi CUBE. Baze de date-anul 2 Laborator 4 SQL Funcţii grup şi clauzele GROUP BY, HAVING. Operatorii ROLLUP şi CUBE. I. [Funcţii grup şi clauza GROUP BY] Clauza GROUP BY este utilizată pentru a diviza liniile unui

More information

Arbori. Figura 1. struct ANOD { int val; ANOD* st; ANOD* dr; }; #include <stdio.h> #include <conio.h> struct ANOD { int val; ANOD* st; ANOD* dr; }

Arbori. Figura 1. struct ANOD { int val; ANOD* st; ANOD* dr; }; #include <stdio.h> #include <conio.h> struct ANOD { int val; ANOD* st; ANOD* dr; } Arbori Arborii, ca şi listele, sunt structuri dinamice. Elementele structurale ale unui arbore sunt noduri şi arce orientate care unesc nodurile. Deci, în fond, un arbore este un graf orientat degenerat.

More information

Mecanismul de decontare a cererilor de plata

Mecanismul de decontare a cererilor de plata Mecanismul de decontare a cererilor de plata Autoritatea de Management pentru Programul Operaţional Sectorial Creşterea Competitivităţii Economice (POS CCE) Ministerul Fondurilor Europene - Iunie - iulie

More information

[{CYCLE NOCYCLE}] [{CACHE

[{CYCLE NOCYCLE}] [{CACHE Laborator 10 1. Secvenţe Secvenţa este un obiect al bazei de date ce permite generarea de întregi unici pentru a fi folosiţi ca valori pentru cheia primară sau coloane numerice unice. Secvenţele sunt independente

More information

GHID DE TERMENI MEDIA

GHID DE TERMENI MEDIA GHID DE TERMENI MEDIA Definitii si explicatii 1. Target Group si Universe Target Group - grupul demografic care a fost identificat ca fiind grupul cheie de consumatori ai unui brand. Toate activitatile

More information

Proiectarea bazelor de date. PL/SQL Înregistrări și Colecții # 13. Adrian Runceanu

Proiectarea bazelor de date. PL/SQL Înregistrări și Colecții # 13. Adrian Runceanu Proiectarea bazelor de date # 13 PL/SQL Înregistrări și Colecții 2016 Adrian Runceanu www.runceanu.ro/adrian Curs 13 Înregistrări și Colecții Proiectarea bazelor de date 2 Înregistrări și Colecții în PL/SQL

More information

INTEROGĂRI ÎN SQL SERVER

INTEROGĂRI ÎN SQL SERVER INTEROGĂRI ÎN SQL SERVER Principala operaţie efectuată într-o bază de date este operaţia de extragere a datelor, care se realizează cu ajutorul unei clauze SELECT. SELECT Clauza SELECT are o sintaxă foarte

More information

CERERI SELECT PE O TABELA

CERERI SELECT PE O TABELA SQL - 1 CERERI SELECT PE O TABELA 1 STUD MATR NUME AN GRUPA DATAN LOC TUTOR PUNCTAJ CODS ---- ------- -- ------ --------- ---------- ----- ------- ---- 1456 GEORGE 4 1141A 12-MAR-82 BUCURESTI 2890 11 1325

More information

ACADEMIA DE STUDII ECONOMICE BUCUREŞTI FACULTATEA DE CIBERNETICĂ, STATISTICĂ ŞI INFORMATICĂ ECONOMICĂ. BUCUREŞTI Iulie 2018

ACADEMIA DE STUDII ECONOMICE BUCUREŞTI FACULTATEA DE CIBERNETICĂ, STATISTICĂ ŞI INFORMATICĂ ECONOMICĂ. BUCUREŞTI Iulie 2018 ACADEMIA DE STUDII ECONOMICE BUCUREŞTI FACULTATEA DE CIBERNETICĂ, STATISTICĂ ŞI INFORMATICĂ ECONOMICĂ Admitere 2018 Programul de masterat profesional de specializare BAZE DE DATE SUPORT PENTRU AFACERI

More information

Documentaţie Tehnică

Documentaţie Tehnică Documentaţie Tehnică Verificare TVA API Ultima actualizare: 27 Aprilie 2018 www.verificaretva.ro 021-310.67.91 / 92 info@verificaretva.ro Cuprins 1. Cum funcţionează?... 3 2. Fluxul de date... 3 3. Metoda

More information

R O M Â N I A CURTEA CONSTITUŢIONALĂ

R O M Â N I A CURTEA CONSTITUŢIONALĂ R O M Â N I A CURTEA CONSTITUŢIONALĂ Palatul Parlamentului Calea 13 Septembrie nr. 2, Intrarea B1, Sectorul 5, 050725 Bucureşti, România Telefon: (+40-21) 312 34 84; 335 62 09 Fax: (+40-21) 312 43 59;

More information

Nume şi Apelativ prenume Adresa Număr telefon Tip cont Dobânda Monetar iniţial final

Nume şi Apelativ prenume Adresa Număr telefon  Tip cont Dobânda Monetar iniţial final Enunt si descriere aplicatie. Se presupune ca o organizatie (firma, banca, etc.) trebuie sa trimita scrisori prin posta unui numar (n=500, 900,...) foarte mare de clienti pe care sa -i informeze cu diverse

More information

Laborator 5: PROIECTAREA BAZELOR DE DATE CURSORI (partea a II-a)

Laborator 5: PROIECTAREA BAZELOR DE DATE CURSORI (partea a II-a) Laborator 5: PROIECTAREA BAZELOR DE DATE CURSORI (partea a II-a) 1. CURSORUL EXPLICIT Gestiunea implicită a cursorului prin utilizarea unui ciclu FOR: FOR nume_record IN nume_cursor LOOP... În acest caz,

More information

Auditul financiar la IMM-uri: de la limitare la oportunitate

Auditul financiar la IMM-uri: de la limitare la oportunitate Auditul financiar la IMM-uri: de la limitare la oportunitate 3 noiembrie 2017 Clemente Kiss KPMG in Romania Agenda Ce este un audit la un IMM? Comparatie: audit/revizuire/compilare Diferente: audit/revizuire/compilare

More information

X-Fit S Manual de utilizare

X-Fit S Manual de utilizare X-Fit S Manual de utilizare Compatibilitate Acest produs este compatibil doar cu dispozitivele ce au următoarele specificații: ios: Versiune 7.0 sau mai nouă, Bluetooth 4.0 Android: Versiune 4.3 sau mai

More information

Cap.5 Normalizarea relaţiilor

Cap.5 Normalizarea relaţiilor CAPITOLUL 5 NORMALIZAREA RELAŢIILOR Dependenţele de date reprezintă constrângeri care se impun valorilor atributelor unei relaţii şi determină proprietăţile relaţiei în raport cu operaţiile de inserare,

More information

MS POWER POINT. s.l.dr.ing.ciprian-bogdan Chirila

MS POWER POINT. s.l.dr.ing.ciprian-bogdan Chirila MS POWER POINT s.l.dr.ing.ciprian-bogdan Chirila chirila@cs.upt.ro http://www.cs.upt.ro/~chirila Pornire PowerPoint Pentru accesarea programului PowerPoint se parcurg următorii paşi: Clic pe butonul de

More information

Ghid identificare versiune AWP, instalare AWP şi verificare importare certificat în Store-ul de Windows

Ghid identificare versiune AWP, instalare AWP şi verificare importare certificat în Store-ul de Windows Ghid identificare versiune AWP, instalare AWP 4.5.4 şi verificare importare certificat în Store-ul de Windows Data: 28.11.14 Versiune: V1.1 Nume fişiser: Ghid identificare versiune AWP, instalare AWP 4-5-4

More information

Capitolul 4 SUBCERERI. F. Radulescu. Curs: Baze de date - Limbajul SQL

Capitolul 4 SUBCERERI. F. Radulescu. Curs: Baze de date - Limbajul SQL Capitolul 4 SUBCERERI 1 STUD MATR NUME AN GRUPA DATAN LOC TUTOR PUNCTAJ CODS ---- ------- -- ------ --------- ---------- ----- ------- ---- 1456 GEORGE 4 1141A 12-MAR-82 BUCURESTI 2890 11 1325 VASILE 2

More information

Reţele Neuronale Artificiale în MATLAB

Reţele Neuronale Artificiale în MATLAB Reţele Neuronale Artificiale în MATLAB Programul MATLAB dispune de o colecţie de funcţii şi interfeţe grafice, destinate lucrului cu Reţele Neuronale Artificiale, grupate sub numele de Neural Network Toolbox.

More information

D în această ordine a.î. AB 4 cm, AC 10 cm, BD 15cm

D în această ordine a.î. AB 4 cm, AC 10 cm, BD 15cm Preparatory Problems 1Se dau punctele coliniare A, B, C, D în această ordine aî AB 4 cm, AC cm, BD 15cm a) calculați lungimile segmentelor BC, CD, AD b) determinați distanța dintre mijloacele segmentelor

More information

La fereastra de autentificare trebuie executati urmatorii pasi: 1. Introduceti urmatoarele date: Utilizator: - <numarul dvs de carnet> (ex: "9",

La fereastra de autentificare trebuie executati urmatorii pasi: 1. Introduceti urmatoarele date: Utilizator: - <numarul dvs de carnet> (ex: 9, La fereastra de autentificare trebuie executati urmatorii pasi: 1. Introduceti urmatoarele date: Utilizator: - (ex: "9", "125", 1573" - se va scrie fara ghilimele) Parola: -

More information

Gruparea rezultatelor unei interogări

Gruparea rezultatelor unei interogări Metode de selecţie a datelor din tabele multiple. Gruparea rezultatelor unei interogări Metode de selecţie a datelor din tabele multiple Obiective După parcurgerea acestei secţiuni, studentul va avea cunoştinţele

More information

Laborator 1. Programare declarativă. Programare logică. Prolog. SWI-Prolog

Laborator 1. Programare declarativă. Programare logică. Prolog. SWI-Prolog Laborator 1 Programare declarativă O paradigmă de programare în care controlul fluxului de execuție este lăsat la latitudinea implementării limbajului, spre deosebire de programarea imperativă în care

More information

Colegiul Național Calistrat Hogaș Piatra-Neamț LIMBAJUL SQL

Colegiul Național Calistrat Hogaș Piatra-Neamț LIMBAJUL SQL LIMBAJUL SQL Prezentare generală SQL (Structured Query Language) este în prezent, unul din cele mai puternice limbaje structurate pentru interogarea bazelor de date relaţionale. Este un limbaj neprocedural

More information

Olimpiad«Estonia, 2003

Olimpiad«Estonia, 2003 Problema s«pt«m nii 128 a) Dintr-o tabl«p«trat«(2n + 1) (2n + 1) se ndep«rteaz«p«tr«telul din centru. Pentru ce valori ale lui n se poate pava suprafata r«mas«cu dale L precum cele din figura de mai jos?

More information

Update firmware aparat foto

Update firmware aparat foto Update firmware aparat foto Mulţumim că aţi ales un produs Nikon. Acest ghid descrie cum să efectuaţi acest update de firmware. Dacă nu aveţi încredere că puteţi realiza acest update cu succes, acesta

More information

5.1 Definirea datelor în SQL

5.1 Definirea datelor în SQL SQL Acronim pentru Structured Query Language Dezvoltat pentru sistemul de gestiune a bazelor de date System R, creat de IBM Research Laboratory, San Jose, California, la sfârşitul anilor 70. SQL a fost

More information

9. Memoria. Procesorul are o memorie cu o arhitectură pe două niveluri pentru memoria de program și de date.

9. Memoria. Procesorul are o memorie cu o arhitectură pe două niveluri pentru memoria de program și de date. 9. Memoria Procesorul are o memorie cu o arhitectură pe două niveluri pentru memoria de program și de date. Primul nivel conține memorie de program cache (L1P) și memorie de date cache (L1D). Al doilea

More information

6. Excepţii şi aserţiuni. 6. Excepţii şi aserţiuni

6. Excepţii şi aserţiuni. 6. Excepţii şi aserţiuni 6. Excepţii şi aserţiuni 1 6. Excepţii şi aserţiuni Tipuri excepţii Clauza throws Generarea excepţiilor Clauzele try, catch şi finally Recomandări pentru utilizarea excepţiilor Aserţiuni 2 Introducere

More information

9. CURSOARE. Obiective. În acest Capitol, vom învăţa despre: Manipularea cursoarelor. Folosirea Cursor FOR Loops şi Nesting Cursors.

9. CURSOARE. Obiective. În acest Capitol, vom învăţa despre: Manipularea cursoarelor. Folosirea Cursor FOR Loops şi Nesting Cursors. 9. CURSOARE Obiective. În acest Capitol, vom învăţa despre: Manipularea cursoarelor. Folosirea Cursor FOR Loops şi Nesting Cursors. Cursoare sunt zone de memorie care ne permit să alocam o zonă de memorie

More information

Aspecte controversate în Procedura Insolvenţei şi posibile soluţii

Aspecte controversate în Procedura Insolvenţei şi posibile soluţii www.pwc.com/ro Aspecte controversate în Procedura Insolvenţei şi posibile soluţii 1 Perioada de observaţie - Vânzarea de stocuri aduse în garanţie, în cursul normal al activității - Tratamentul leasingului

More information

Dispozitive Electronice şi Electronică Analogică Suport curs 02 Metode de analiză a circuitelor electrice. Divizoare rezistive.

Dispozitive Electronice şi Electronică Analogică Suport curs 02 Metode de analiză a circuitelor electrice. Divizoare rezistive. . egimul de curent continuu de funcţionare al sistemelor electronice În acest regim de funcţionare, valorile mărimilor electrice ale sistemului electronic sunt constante în timp. Aşadar, funcţionarea sistemului

More information

INFORMAȚII DESPRE PRODUS. FLEXIMARK Stainless steel FCC. Informații Included in FLEXIMARK sample bag (article no. M )

INFORMAȚII DESPRE PRODUS. FLEXIMARK Stainless steel FCC. Informații Included in FLEXIMARK sample bag (article no. M ) FLEXIMARK FCC din oțel inoxidabil este un sistem de marcare personalizată în relief pentru cabluri și componente, pentru medii dure, fiind rezistent la acizi și la coroziune. Informații Included in FLEXIMARK

More information

ISBN-13:

ISBN-13: Regresii liniare 2.Liniarizarea expresiilor neliniare (Steven C. Chapra, Applied Numerical Methods with MATLAB for Engineers and Scientists, 3rd ed, ISBN-13:978-0-07-340110-2 ) Există cazuri în care aproximarea

More information

Crearea şi gestionarea tabelelor. Definirea constrângerilor de integritate în SQL

Crearea şi gestionarea tabelelor. Definirea constrângerilor de integritate în SQL Crearea şi gestionarea elor. Definirea constrângerilor de integritate în SQL Obiective Scopul acestui referat este de a prezenta instrucńiunile LDD ce pot fi utilizate pentru modificarea schemei logice

More information

Macrocomenzi. Figura 1. Personalizarea barei de meniuri. Se va afișa fereastra din figura 2. Figura 2. Includerea tab ului Developer.

Macrocomenzi. Figura 1. Personalizarea barei de meniuri. Se va afișa fereastra din figura 2. Figura 2. Includerea tab ului Developer. Macrocomenzi Macrocomenzile (sau, prescurtat macrou rile) sunt colecții de comenzi înregistrate pentru a putea fi lansate în execuție, în bloc, ori de câte ori va fi nevoie. Avantajul lucrului cu macro

More information

Semnale şi sisteme. Facultatea de Electronică şi Telecomunicaţii Departamentul de Comunicaţii (TC)

Semnale şi sisteme. Facultatea de Electronică şi Telecomunicaţii Departamentul de Comunicaţii (TC) Semnale şi sisteme Facultatea de Electronică şi Telecomunicaţii Departamentul de Comunicaţii (TC) http://shannon.etc.upt.ro/teaching/ssist/ 1 OBIECTIVELE CURSULUI Disciplina îşi propune să familiarizeze

More information

CERERI SELECT PE MAI MULTE TABELE

CERERI SELECT PE MAI MULTE TABELE SQL - 2 CERERI SELECT PE MAI MULTE TABELE 1 STUD MATR NUME AN GRUPA DATAN LOC TUTOR PUNCTAJ CODS ---- ------- -- ------ --------- ---------- ----- ------- ---- 1456 GEORGE 4 1141A 12-MAR-82 BUCURESTI 2890

More information

Figura x.1 Ecranul de pornire al mediului de dezvoltare

Figura x.1 Ecranul de pornire al mediului de dezvoltare x. Mediul de dezvoltare MICROSOFT VISUAL C++ În cadrul acestui capitol vom prezenta Microsoft Visual C++, din cadrul suitei Microsoft Visual Studio 2012, care este un mediu de programare care suportă dezvoltarea

More information

Excel Advanced. Curriculum. Școala Informală de IT. Educație Informală S.A.

Excel Advanced. Curriculum. Școala Informală de IT. Educație Informală S.A. Excel Advanced Curriculum Școala Informală de IT Tel: +4.0744.679.530 Web: www.scoalainformala.ro / www.informalschool.com E-mail: info@scoalainformala.ro Cuprins 1. Funcții Excel pentru avansați 2. Alte

More information

Propuneri pentru teme de licență

Propuneri pentru teme de licență Propuneri pentru teme de licență Departament Automatizări Eaton România Instalație de pompare cu rotire în funcție de timpul de funcționare Tablou electric cu 1 pompă pilot + 3 pompe mari, cu rotirea lor

More information

The First TST for the JBMO Satu Mare, April 6, 2018

The First TST for the JBMO Satu Mare, April 6, 2018 The First TST for the JBMO Satu Mare, April 6, 08 Problem. Prove that the equation x +y +z = x+y +z + has no rational solutions. Solution. The equation can be written equivalently (x ) + (y ) + (z ) =

More information

Subinterogari SELECT salariul FROM angajaţi WHERE nume= Ionescu SELECT nume, prenume FROM angajaţi WHERE salariul>s

Subinterogari SELECT salariul FROM angajaţi WHERE nume= Ionescu SELECT nume, prenume FROM angajaţi WHERE salariul>s Subinterogari Sunteţi patronul unei firme. În ultima perioadă unul dintre salariaţii firmei, pe nume Ionescu, s-a remarcat în mod deosebit prin activitatea sa. Aţi decis de aceea să îi măriţi salariul

More information

INTERPRETOARE DE COMENZI

INTERPRETOARE DE COMENZI Rularea lui determin afişarea mesajului hello world la consola 3.2. Facilităţi ale interpretoarelor de comenzi 3.1. Introducere Capitolul 3 INTERPRETOARE DE COMENZI Interpretorul de comenzi este un program

More information

PROIECT. La Baze de date. Evidența activității pentru o firmă IT. Îndrumător: ș. l. dr. ing. Mirela Danubianu. Efectuat de: Grigoriev Sergiu gr.

PROIECT. La Baze de date. Evidența activității pentru o firmă IT. Îndrumător: ș. l. dr. ing. Mirela Danubianu. Efectuat de: Grigoriev Sergiu gr. PROIECT La Baze de date Evidența activității pentru o firmă IT Îndrumător: ș. l. dr. ing. Mirela Danubianu Efectuat de: Grigoriev Sergiu gr. 1131B Suceava 2011 Cuprins 1. DESCRIERE 3 2. MODELAREA CONCEPTUALĂ

More information

Ierarhia memoriilor Tipuri de memorii Memorii semiconductoare Memoria cu unități multiple. Memoria cache Memoria virtuală

Ierarhia memoriilor Tipuri de memorii Memorii semiconductoare Memoria cu unități multiple. Memoria cache Memoria virtuală Ierarhia memoriilor Tipuri de memorii Memorii semiconductoare Memoria cu unități multiple Memoria cache Memoria virtuală 1 Memorii RAM: datele sunt identificate cu ajutorul unor adrese unice Memorii asociative:

More information

Clase si obiecte. 1. Scopul lucrării. 2. Clase simple

Clase si obiecte. 1. Scopul lucrării. 2. Clase simple Clase si obiecte 1. Scopul lucrării Obiectivele de învățare ale acestei sesiuni de laborator sunt cunoașterea și stăpânirea: Învățarea modului corect de declarare a claselor, definirea si instantierea

More information

Itemi Sisteme de Operare

Itemi Sisteme de Operare Itemi Sisteme de Operare 1. Pentru a muta un dosar (folder) de pe partiţia C: pe partiţia D: folosim: a. New Folder b. Ctrl + C din bara de instrumente şi Copy; c. Ctrl + X şi Ctrl + V; d. Edit Paste;

More information

Tratarea excepţiilor

Tratarea excepţiilor Lucrarea 6 Tratarea excepţiilor Cuprins Tratarea clasică a excepţiilor...1 Mecanismul de emitere-captare a excepţiilor...3 Instrucţiunea throw...5 Clauza throws...5 Care tipuri de excepţie vor apărea într-o

More information

Ce pot face pe hi5? Organizare si facilitati. Pagina de Home

Ce pot face pe hi5? Organizare si facilitati. Pagina de Home Ce este Hi5!? hi5 este un website social care, în decursul anului 2007, a fost unul din cele 25 cele mai vizitate site-uri de pe Internet. Compania a fost fondată în 2003 iar pana in anul 2007 a ajuns

More information

Proprietăţi obiectual-relaţionale în standardul SQL prof. dr. ing. Mircea Petrescu

Proprietăţi obiectual-relaţionale în standardul SQL prof. dr. ing. Mircea Petrescu Proprietăţi obiectual-relaţionale în standardul SQL prof. dr. ing. Mircea Petrescu Tipuri construite interne (build-in) Din faza iniţială a existenţei sale, SQL a permis utilizarea tipurilor atomice pentru

More information

6. Bucle. 6.1 Instrucţiunea while

6. Bucle. 6.1 Instrucţiunea while 6. Bucle În capitolul trecut am văzut cum putem selecta diferite instrucţiuni pentru execuţie folosind instrucţiunea if. O buclă este o structură de control care provoacă executarea unei instrucţiuni sau

More information

Tema 1 - Transferuri de date DMA intr-o arhitectura de tip Cell

Tema 1 - Transferuri de date DMA intr-o arhitectura de tip Cell Tema 1 - Transferuri de date DMA intr-o arhitectura de tip Cell Termen de trimitere a temei: Luni, 31 martie 2008, ora 23:55 1. Specificatii functionale O arhitectura de tip Cell consta din urmatoarele

More information

Știinţa, Ministerul Educaţiei al Republicii Moldova

Știinţa, Ministerul Educaţiei al Republicii Moldova Știinţa, 2014 Ministerul Educaţiei al Republicii Moldova CZU 004(075.3) G 80 Elaborat conform curriculumului disciplinar în vigoare și aprobat prin Ordinul ministrului educaţiei al Republicii Moldova (nr.

More information

Mulțumim anticipat tuturor acelora care vor transmite critici/observații/sugestii

Mulțumim anticipat tuturor acelora care vor transmite critici/observații/sugestii Mulțumim anticipat tuturor acelora care vor transmite critici/observații/sugestii ilincamircea@yahoo.com TEMA III.1 v1 : ORGANIZAREA DATELOR UNUI PROGRAM C/C++ ÎN MO postat 02.11.2016 (sinteză) Coținutul

More information

Interogarea (query), este operaţia prin care se obţin datele

Interogarea (query), este operaţia prin care se obţin datele CAPITOLUL 3 INTEROGAREA BAZELOR DE DATE Interogarea (query), este operaţia prin care se obţin datele dorite dintr-o bază de date, selectate conform unui anumit criteriu (condiţie). Întrucât operaţia de

More information

Behavioral design patterns (comportamentale) ALIN ZAMFIROIU

Behavioral design patterns (comportamentale) ALIN ZAMFIROIU Behavioral design patterns (comportamentale) ALIN ZAMFIROIU Behavioral design patterns Furnizează soluții pentru o mai bună interacțiune între obiecte și clase. Aceste design pattern-uri controlează relațiile

More information

Limbajul PL/SQL. Structura unui bloc PL/SQL este următoarea:

Limbajul PL/SQL. Structura unui bloc PL/SQL este următoarea: Limbajul PLSQL PLSQL (Procedural LanguageSQL) este extensia procedurală a limbajului SQL dezvoltată de Oracle Corporation, ce permite includerea instrucńiunilor de manipulare şi interogare a datelor în

More information

Cap.4 Limbaje şi biblioteci de programare a aplicaţiilor de baze de date

Cap.4 Limbaje şi biblioteci de programare a aplicaţiilor de baze de date CAPITOLUL 4 LIMBAJE ŞI BIBLIOTECI DE PROGRAMARE A APLICAŢIILOR DE BAZE DE DATE Sistemele de gestiune a bazelor de date relaţionale prelucrează instrucţiuni (comenzi) SQL. Limbajul SQL este un limbaj neprocedural,

More information

MODELUL UNUI COMUTATOR STATIC DE SURSE DE ENERGIE ELECTRICĂ FĂRĂ ÎNTRERUPEREA ALIMENTĂRII SARCINII

MODELUL UNUI COMUTATOR STATIC DE SURSE DE ENERGIE ELECTRICĂ FĂRĂ ÎNTRERUPEREA ALIMENTĂRII SARCINII MODELUL UNUI COMUTATOR STATIC DE SURSE DE ENERGIE ELECTRICĂ FĂRĂ ÎNTRERUPEREA ALIMENTĂRII SARCINII Adrian Mugur SIMIONESCU MODEL OF A STATIC SWITCH FOR ELECTRICAL SOURCES WITHOUT INTERRUPTIONS IN LOAD

More information

Ghid pentru configurarea şi utilizarea aplicaţiei clicksign Demo

Ghid pentru configurarea şi utilizarea aplicaţiei clicksign Demo Ghid pentru configurarea şi utilizarea aplicaţiei clicksign Demo 2.6.9.223 Cuprins 1 Cadru general...2 2 Obţinerea unui certificat digital...3 3 Configurarea aplicaţiei clicksign...5 4 Utilizarea aplicaţiei

More information

HEAPSORT I. CONSIDERAŢII TEORETICE

HEAPSORT I. CONSIDERAŢII TEORETICE I. CONSIDERAŢII TEORETICE HEAPSORT Algoritm de sortare care combină calităţile sortării prin inserţie cu cele ale sortării prin interclasare. A fost inventat de Williams 1964. Prin heapsort se ordonează

More information

Universitatea George Bariţiu, Braşov

Universitatea George Bariţiu, Braşov LUCRUL CU BAZE DE DATE ÎN JAVA Lect.univ.dr.ing. IOAN-GHEORGHE RAŢIU Lect.univ. NICOLETA DAVID Universitatea George Bariţiu, Braşov Rezumat O bază de date reprezintă o modalitate de stocare a unor informaţii

More information

Creare baza de data Deschidem aplicaţia Microsoft Access. Lansarea în execuţie a programului se face urmând calea:

Creare baza de data Deschidem aplicaţia Microsoft Access. Lansarea în execuţie a programului se face urmând calea: Baze de date Pentru început este bine să înţelegem noţiunile de bază din Access: modul de organizare a unei baze de date, a noţiunilor de tabel, înregistrare, câmp, tip de dată al câmpului, proprietăţi

More information

Metoda BACKTRACKING. prof. Jiduc Gabriel

Metoda BACKTRACKING. prof. Jiduc Gabriel Metoda BACKTRACKING prof. Jiduc Gabriel Un algoritm backtracking este un algoritm de căutare sistematică și exhausivă a tuturor soluțiilor posibile, dintre care se poate alege apoi soluția optimă. Problemele

More information

PROCEDURA PRIVIND DECONTURILE. 2. Domeniu de aplicare Procedura se aplică în cadrul Universităţii Tehnice Cluj-Napoca

PROCEDURA PRIVIND DECONTURILE. 2. Domeniu de aplicare Procedura se aplică în cadrul Universităţii Tehnice Cluj-Napoca PROCEDURA PRIVIND DECONTURILE 1. Scpul: Descrie structura si mdul de elabrare si prezentare a prcedurii privind dcumentele care trebuie intcmite si cursul acestra, atunci cind persana efectueaza un decnt.

More information

2. Setări configurare acces la o cameră web conectată într-un echipament HG8121H cu funcție activă de router

2. Setări configurare acces la o cameră web conectată într-un echipament HG8121H cu funcție activă de router Pentru a putea vizualiza imaginile unei camere web IP conectată într-un echipament Huawei HG8121H, este necesară activarea serviciului Dinamic DNS oferit de RCS&RDS, precum și efectuarea unor setări pe

More information

ADO.NET - note de curs pentru disciplina "Servere de date"

ADO.NET - note de curs pentru disciplina Servere de date ADO.NET - note de curs pentru disciplina "Servere de date" Pentru lucrul cu sursele de date necesare într-o aplicaţie se poate folosi ADO.NET, care este o ierarhie de clase ce permite gestiunea datelor.

More information

Proiectarea Sistemelor Software Complexe

Proiectarea Sistemelor Software Complexe Proiectarea Sistemelor Software Complexe Curs 3 Principii de Proiectare Orientată pe Obiecte Principiile de proiectare orientată pe obiecte au fost formulate pentru a servi ca reguli pentru evitarea proiectării

More information

Capitolul IF.02. Structurarea bazelor de date

Capitolul IF.02. Structurarea bazelor de date Capitolul Cuvinte-cheie: Normalizare, prima formă normală, a doua formă normală, a treia formă normală, cheie candidată, relatie 1 la 1, relație 1 la n, relație m la n IA.02.1. Scurt istoric În anii '60,

More information

MANAGEMENTUL CALITĂȚII - MC. Proiect 5 Procedura documentată pentru procesul ales

MANAGEMENTUL CALITĂȚII - MC. Proiect 5 Procedura documentată pentru procesul ales MANAGEMENTUL CALITĂȚII - MC Proiect 5 Procedura documentată pentru procesul ales CUPRINS Procedura documentată Generalități Exemple de proceduri documentate Alegerea procesului pentru realizarea procedurii

More information

APLICAŢIE INFORMATICĂ PENTRU PREGĂTIREA MISIUNILOR DE NIVEL TACTIC

APLICAŢIE INFORMATICĂ PENTRU PREGĂTIREA MISIUNILOR DE NIVEL TACTIC APLICAŢIE INFORMATICĂ PENTRU PREGĂTIREA MISIUNILOR DE NIVEL TACTIC Asist.univ.drd. Romana OANCEA Conf.univ.dr.ing. Ghiţă BÂRSAN Academia Forţelor Terestre Nicolae Bălcescu Sibiu Abstract The paper describes

More information

5.2 Interogări în SQL

5.2 Interogări în SQL 5.2 Interogări în SQL Cererile de interogare exprimate în SQL prezintă un aspect declarativ deoarece sunt specificate proprietăţile rezultatului şi nu modul de obţinere (SQL urmăreşte principiile calculului

More information

O tranzacţie este o unitate logică de prelucrare

O tranzacţie este o unitate logică de prelucrare CAPITOLUL 6 GESTIUNEA TRANZACŢIILOR În mod obişnuit, un SGBD deserveşte mai mulţi utilizatori, care accesează concurent datele din tabele. Accesul concurent al utilizatorilor este asigurat prin capacitatea

More information

1. Creaţi un nou proiect de tip Windows Forms Application, cu numele MdiExample.

1. Creaţi un nou proiect de tip Windows Forms Application, cu numele MdiExample. Aplicaţia MdiExample Aplicaţia implementează: Deschiderea şi închiderea ferestrelor child. Minimizarea şi maximizarea ferestrelor. Aranjarea ferestrelor. Tratarea mesajului de atenţionare la ieşirea din

More information

Mods euro truck simulator 2 harta romaniei by elyxir. Mods euro truck simulator 2 harta romaniei by elyxir.zip

Mods euro truck simulator 2 harta romaniei by elyxir. Mods euro truck simulator 2 harta romaniei by elyxir.zip Mods euro truck simulator 2 harta romaniei by elyxir Mods euro truck simulator 2 harta romaniei by elyxir.zip 26/07/2015 Download mods euro truck simulator 2 harta Harta Romaniei pentru Euro Truck Simulator

More information

Lucrarea Nr.1. Sisteme de operare. Generalitati

Lucrarea Nr.1. Sisteme de operare. Generalitati Lucrarea Nr.1 Sisteme de operare. Generalitati Scopul lucrarii Lucrarea îsi propune familiarizarea studentilor cu sistemele de operare disponibile în laborator, respectiv acele sisteme de operare cu ajutorul

More information

PACHETE DE PROMOVARE

PACHETE DE PROMOVARE PACHETE DE PROMOVARE Școala de Vară Neurodiab are drept scop creșterea informării despre neuropatie diabetică și picior diabetic în rândul tinerilor medici care sunt direct implicați în îngrijirea și tratamentul

More information

INSTRUMENTE DE MARKETING ÎN PRACTICĂ:

INSTRUMENTE DE MARKETING ÎN PRACTICĂ: INSTRUMENTE DE MARKETING ÎN PRACTICĂ: Marketing prin Google CUM VĂ AJUTĂ ACEST CURS? Este un curs util tuturor celor implicați în coordonarea sau dezvoltarea de campanii de marketingși comunicare online.

More information

CAIETUL DE SARCINI Organizare evenimente. VS/2014/0442 Euro network supporting innovation for green jobs GREENET

CAIETUL DE SARCINI Organizare evenimente. VS/2014/0442 Euro network supporting innovation for green jobs GREENET CAIETUL DE SARCINI Organizare evenimente VS/2014/0442 Euro network supporting innovation for green jobs GREENET Str. Dem. I. Dobrescu, nr. 2-4, Sector 1, CAIET DE SARCINI Obiectul licitaţiei: Kick off,

More information