Diferència entre revisions de la pàgina «M2 - Bases de dades / Exercicis UF3: Llenguatges SQL / Solucions PL-SQL T3»
De wikiserver
(→T3- Declaració de variables) |
(→T3- Declaració de variables) |
||
Línia 96: | Línia 96: | ||
PRINT g_char | PRINT g_char | ||
PRINT g_num | PRINT g_num | ||
− | <pre> | + | </pre> |
Revisió del 16:32, 9 abr 2014
T3- Declaració de variables
- Exercici 1
- Avalua les següents declaracions de variables determinant quines no son correctes (donen error), explica perquè.
- a) DECLARE v_id NUMBER(4);
Correcte.
- b) DECLARE v_x, v_y,v_z VARCHAR2(10);
Incorrecte, perquè només es permet un identificador per declaració.
- c) DECLARE v_data_naixament DATE NOT NULL;
Incorrecte, perquè una variable NOT NULL ha d'inicialitzar-se.
- d) DECLARE v_en_stock BOOLEAN :=1
Incorrecte, perquè 1 no és una expressió booleana.
- Exercici 2
- Determina el tipus de dades de les expressions resultants en les següents assignacions
- a) v_dies_que_falten := v_date - SYSDATE;
Number
- b) v_sender := USER || ':' || TO_CHAR(v_deptno);
Caràcter
- c) v_sum := $100,000+$250,000
Incorrecte. No es poden convertir símbols especials de VARCHAR2 a NUMBER
- d) v_bandera := TRUE
Booelan
- e) v_n1 := v_n2 > (2*v_n3);
Boolean
- f) v_valor := NULL;
Qualsevol tipus d'escalar.
- Exercici 3
- Crea un bloc anònim per imprimir la frase “Benvingut a PL/SQL”
VARIABLE g_message VARCHAR2(30) BEGIN :g_message := 'My PL/SQL Block Works'; END; / PRINT g_message G_MESSAGE --------------------------------------------------------- My PL/SQL Block Works
- Exercici 4
- Crea un bloc que declari dues variables. Assigneu el valor d'aquestes variables PL/SQL a variables SQL*PLUS i imprimeix el valor d'aquestes dues variables per pantalla. Guarda el bloc PL/SQL en un arxiu anomenat p2q4.spl.
- V_CHAR Character (variable length)
- V_Number
- Assigna els següents valors a les variables:
- Variable Value
- --------- ---------------------------------------------
- V_CHAR The literal '42 is the answer'
- V_NUM The first two characters form V_CHAR
VARIABLE g_char VARCHAR2(30) VARIABLE g_num NUMBER DECLARE v_char VARCHAR2(30); v_num NUMBER; BEGIN v_char := '42 is the answer'; v_num := TO_NUMBER(SUBSTR(v_char,1,2)); :g_char := v_char; :g_num := v_num; END; / PRINT g_char PRINT g_num