Differences

This shows you the differences between two versions of the page.

Link to this comparison view

bd:laboratoare:11 [2020/02/18 20:38]
iulia.radulescu [Commenzile SQL*Plus]
bd:laboratoare:11 [2022/05/17 12:35] (current)
sorin.ciolofan [Comenzi SQL*Plus]
Line 1: Line 1:
 ====== Laborator 11 - Formatarea datelor de ieșire în SQL*Plus ====== ====== Laborator 11 - Formatarea datelor de ieșire în SQL*Plus ======
  
-==== Obiective ====+===== Obiective ​=====
  
   * Formatarea datelor de ieșire   * Formatarea datelor de ieșire
Line 9: Line 9:
   * Comenzile BREAK și COMPUTE   * Comenzile BREAK și COMPUTE
  
-===== Commenzile ​SQL*Plus =====+ 
 + 
 +===== Comenzile ​SQL*Plus =====
  
 Comenzile SQL*Plus sunt folosite pentru: Comenzile SQL*Plus sunt folosite pentru:
Line 18: Line 20:
   * Interceptarea și interpretarea mesajelor de eroare   * Interceptarea și interpretarea mesajelor de eroare
  
-=== Comenzi SQL*Plus ===+==== Comenzi SQL*Plus ​====
  
   * **<​nowiki>​@</​nowiki>​** – execută un fișier de comenzi indirecte   * **<​nowiki>​@</​nowiki>​** – execută un fișier de comenzi indirecte
Line 77: Line 79:
 | **<​nowiki>​SQLCASE {MIXED|LOWER|UPPER}</​nowiki>​** | permite convertirea comenzilor SQL înainte de execuție. **LOWER/​UPPER** convertesc comenzile iar **MIXED** (valoarea implicită) va lăsa textul nemodificat| | **<​nowiki>​SQLCASE {MIXED|LOWER|UPPER}</​nowiki>​** | permite convertirea comenzilor SQL înainte de execuție. **LOWER/​UPPER** convertesc comenzile iar **MIXED** (valoarea implicită) va lăsa textul nemodificat|
  
-<color red> Ex. 1 </​color>​ Să se seteze pagina de afișare la 120 caractere pe linie, 24 de linii pe pagină, un spațiu de 2 caractere între coloanele de afișare, salt de 5 linii între pagini, afișare să se facă fără antetul de coloană și fără a specifica numărul de înregistrări returnate de interogare.+<color red> Ex. 1</​color>​ Să se seteze pagina de afișare la 120 caractere pe linie, 24 de linii pe pagină, un spațiu de 2 caractere între coloanele de afișare, salt de 5 linii între pagini, afișare să se facă fără antetul de coloană și fără a specifica numărul de înregistrări returnate de interogare. 
 + 
 +{{:​bd:​laboratoare:​lab11_ex1.png?​200|}}
  
 === Comanda COLUMN === === Comanda COLUMN ===
Line 100: Line 104:
 | **<​nowiki>​WRA[PPED]|[WOR[D_WRAPPED]|TRU[NCATED]</​nowiki>​** | specifică cum va fi afișat un șir prea lung pentru o coloana | | **<​nowiki>​WRA[PPED]|[WOR[D_WRAPPED]|TRU[NCATED]</​nowiki>​** | specifică cum va fi afișat un șir prea lung pentru o coloana |
  
-<color red> Ex. 2 </​color>​ Să se listeze //id_dep//, //​functie//,​ //id_ang//, //​salariu//,​ //​comision//​ și venit lunar pentru anajații din departamentul 30. Formatați coloanele.+<color red> Ex. 2</​color>​ Să se listeze //id_dep//, //​functie//,​ //id_ang//, //​salariu//,​ //​comision//​ și venitul ​lunar pentru anajații din departamentul 30. Formatați coloanele.
  
-=== Comenzile ​TITLE si BTITLE ===+{{:​bd:​laboratoare:​lab11_ex2.png?​550|}} 
 + 
 +=== Comenzile ​TTITLE ​si BTITLE ===
  
   * Comanda TTITLE se folosește pentru formatarea titlui de început al unui raport.   * Comanda TTITLE se folosește pentru formatarea titlui de început al unui raport.
   * Comanda BTITLE se folosește pentru formatarea titlui de sfârșit al unui raport.   * Comanda BTITLE se folosește pentru formatarea titlui de sfârșit al unui raport.
  
-=== Parametrii comenzilor ​TITLE si BTITLE ===+=== Parametrii comenzilor ​TTITLE ​si BTITLE ===
  
 ^Nume parametru ​         ^Descriere parametru ^ ^Nume parametru ​         ^Descriere parametru ^
Line 119: Line 125:
 |**FORMAT char** | se specifică formatul de afișare pentru caractere numerice sau alfanumerice| |**FORMAT char** | se specifică formatul de afișare pentru caractere numerice sau alfanumerice|
 |**UNDERLINE** | se specifică ca afișarea să se facă folosind caractere subliniate| |**UNDERLINE** | se specifică ca afișarea să se facă folosind caractere subliniate|
 +
 +<color red> Ex. 3. </​color>​ Să se creeze un raport care afișează //id_ang//, //nume//, //​functie//,​ //​data_ang//​ și //salariu// pentru angajații din departamentul 20.
 +
 +{{:​bd:​laboratoare:​lab11_ex3.png?​550|}}
 +
 +===== Rapoarte =====
 +
 +Un raport poate fi fragmentat după:
 +  * Coloană
 +  * Expresie
 +  * Rând
 +  * Raport
 +Pe un raport se pot executa următoarele acțiuni în urma formatării:​
 +  * Salt de n rânduri
 +  * Salt de pagină
 +  * Duplicarea sau neduplicarea valorilor pe o coloană
 +
 +==== Comenzile BREAK si COMPUTE ====
 +
 +  * Comanda **BREAK** este folosită pentru fragmentarea unui raport în mai multe segmente
 +  * Comanda **COMPUTE** execută anumite calcule pe segmentele respective
 +  * Comanda **BREAK** (care face o fragmentare) are următoarea sintaxă:
 +
 +**BRE[AK] [ON report_element [action [action]]] ...**
 +
 +unde:
 +
 +  * report_element are sintaxa: **{column|expr|ROW|REPORT}**
 +  * action are sintaxa: **[SKI[P] n|[SKI[P]] PAGE] [NODUP[LICATES]|DUP[LICATES]]**
 +
 +Calculele care se pot face cu comanda COMPUTE sunt:
 +
 +^Operatie ​         ^Descriere operatie ^
 +|**AVG** | calcul medie (pentru date de tip number) |
 +|**COU[NT]** | numără valorile nenule (pentru orice tip de date) |
 +|**MAX[IMUM]** | valoare maximă (pentru date de tip number și char) |
 +|**MIN[IMUM]** | valoare minimă (pentru date de tip number și char) |
 +|**NUM[BER]** | numără rânduri (pentru orice tip de data) |
 +|**STD** | calcul deviație standard pentru valori nenule (pentru date de tip number) |
 +|**SUM** | calcul suma pentru valori nenule (pentru date de tip number) |
 +|**VAR[IANCE]** | calcul variație (pentru date de tip number)|
 +
 +
 +<color red> Ex. 4. </​color>​ Sa se faca un raport care să conțină numele departamentului,​ numele angajaților,​ funcția ​ și salariul. Să se calculeze salariu total pe fiecare departament și salariul total pe firma.
 +
 +{{:​bd:​laboratoare:​lab11_ex4.png?​550|}}
 +
 +<color red> Ex. 5. </​color>​ Să se facă un stat de salarii. Să se calculeze impozitul astfel:
 +  * Dacă venitul <​nowiki><​=</​nowiki>​ 2000, impozitul este 10% din venit
 +  * Dacă venitul > 2000, impozitul este 20% din venit
 +
 +{{:​bd:​laboratoare:​lab11_ex5.png?​700|}}
  
  
bd/laboratoare/11.1582051136.txt.gz · Last modified: 2020/02/18 20:38 by iulia.radulescu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0