PL/SQL Mock Test



This section presents you various set of Mock Tests related to PL/SQL. You can download these sample mock tests at your local machine and solve offline at your convenience. Every mock test is supplied with a mock test key to let you verify the final score and grade yourself.

Questions and Answers

PL/SQL Mock Test I

Answer : D

Answer : B

Q 9 - Which of the following is not a PL/SQL unit?

A - Table

B - Type

C - Trigger

D - Package

Answer : A

Q 14 - What value will be assigned to the variable declared as below −

counter binary_integer;

A - 0

B - 1

C - NULL

D - None of the above.

Answer : C

Q 15 - Consider the following code −

 DECLARE -- Global variables num number := 95; BEGIN dbms_output.put_line('num: ' || num1); DECLARE -- Local variables num number := 195; BEGIN dbms_output.put_line('num: ' || num1); END; END; 

What will happen when the code is executed?

A - It wont execute, it has syntax error

B - It will print

     num: 95

     num: 195

C - It will print

     num: 95

     num: 95

D - It will print

     num: 195

     num: 195

Answer : B

Q 18 - What will be the output of the following code snippet?

 DECLARE a number (2) := 21; b number (2) := 10; BEGIN IF ( a <= b ) THEN dbms_output.put_line(a); END IF; IF ( b >= a ) THEN dbms_output.put_line(a); END IF; IF ( a <> b ) THEN dbms_output.put_line(b); END IF; END; 

A - 2

B - 21

C - 10

D - 21, 10

Answer : C

Q 19 - What would be printed when the following code is executed?

 DECLARE x NUMBER; BEGIN x := 5; x := 10; dbms_output.put_line(-x); dbms_output.put_line(+x); x := -10; dbms_output.put_line(-x); dbms_output.put_line(+x); END; 

A - -10

     10

     10

     -10

B - 10

     -10

     10

     -10

C - -10

     +10

     +10

     -10

D - 10

     -10

     -10

     10

Answer : A

Q 20 - To get the server output result and display it into the screen, you need to write −

A - set serveroutput on

B - set server output on

C - set dbmsoutput on

D - set dbms output on

Answer : A

Q 22 - Which of the following is true about the following code snippet?

 DECLARE a number(3) := 100; BEGIN IF (a = 50 ) THEN dbms_output.put_line('Value of a is 10' ); ELSEIF ( a = 75 ) THEN dbms_output.put_line('Value of a is 20' ); ELSE dbms_output.put_line('None of the values is matching'); END IF; dbms_output.put_line('Exact value of a is: '|| a ); END; 

A - It has syntax error.

B - It will print 'None of the values is matching'.

C - It will print

None of the values is matching

Exact value of a is: 100

D - None of the above.

Answer : A

Explanation

the ELSIF statement is wrongly written as ELSEIF

Q 23 - Which of the following is true about the following code snippet?

 DECLARE a number(3) := 100; BEGIN IF (a = 50 ) THEN dbms_output.put_line('Value of a is 10' ); ELSIF ( a = 75 ) dbms_output.put_line('Value of a is 20' ); ELSE dbms_output.put_line('None of the values is matching'); END IF; dbms_output.put_line('Exact value of a is: '|| a ); END; 

A - It has syntax error.

B - It will print 'None of the values is matching'.

C - It will print

None of the values is matching

Exact value of a is: 100

D - None of the above.

Answer : A

Explanation

it has the THEN keyword missing in the ELSIF statement

Q 24 - Which of the following is true about the following PL/SQL CASE statement syntax?

 CASE selector WHEN 'value1' THEN S1; WHEN 'value2' THEN S2; WHEN 'value3' THEN S3; ... ELSE Sn; -- default case END CASE; 

A - It is wrongly written.

B - It is perfectly written.

C - It is you can specify the literal NULL for all the S expressions and the default Sn.

D - All the expressions like the selector, the value and the returns values, need not be of the same data type.

Answer : B

Q 25 - What is the output of the following code?

 DECLARE grade char(1) := 'B'; BEGIN case when grade = 'A' then dbms_output.put_line('Excellent'); when grade = 'B' then dbms_output.put_line('Very good'); when grade = 'C' then dbms_output.put_line('Well done'); when grade = 'D' then dbms_output.put_line('You passed'); when grade = 'F' then dbms_output.put_line('Better try again'); else dbms_output.put_line('No such grade'); end case; END; 

A - It has syntax error, so there will not be any output.

B - B

C - Very good

D - No such grade

Answer : C

Answer Sheet

Question Number Answer Key
1 C
2 D
3 D
4 B
5 D
6 A
7 B
8 D
9 A
10 D
11 D
12 A
13 B
14 C
15 B
16 D
17 B
18 C
19 A
20 A
21 D
22 A
23 A
24 B
25 C
plsql_questions_answers.htm
Advertisements