PL/SQL Multiple choice Questions and Answers

40+ TOP PL/SQl Interview Questions and Answers

PL/SQl Multiple choice Questions
PL/SQl Multiple choice Questions

1. Which of the following statements is true about implicit cursors?
A. Implicit cursors are used for SQL statements that are not named.
B. Developers should use implicit cursors with great care.
C. Implicit cursors are used in cursor for loops to handle data processing.
D. Implicit cursors are no longer a feature in Oracle.
Ans: A

2. Which of the following is not a feature of a cursor FOR loop?
A. Record type declaration.
B. Opening and parsing of SQL statements.
C. Fetches records from cursor.
D. Requires exit condition to be defined.
Ans:B

3. A developer would like to use referential datatype declaration on a variable. The variable name is EMPLOYEE_LASTNAME, and the corresponding table and column is EMPLOYEE, and LNAME, respectively. How would the developer define this variable using referential datatypes?
A. Use employee.lname%type.
B. Use employee.lname%rowtype.
C. Look up datatype for EMPLOYEE column on LASTNAME table and use that.
D. Declare it to be type LONG.
Ans: A

4. Which three of the following are implicit cursor attributes?
A. %found
B. %too_many_rows
C. %notfound
D. %rowcount
E. %rowtype
Ans:C

5. If left out, which of the following would cause an infinite loop to occur in a simple loop?
A. LOOP
B. END LOOP
C. IF-THEN
D. EXIT
Ans:B

6. Which line in the following statement will produce an error?
A. cursor action_cursor is
B. select name, rate, action
C. into action_record
D. from action_table;
E. There are no errors in this statement.
Ans:C

7. The command used to open a CURSOR FOR loop is
A. open
B. fetch
C. parse
D. None, cursor for loops handle cursor opening implicitly.
Ans:D

8. What happens when rows are found using a FETCH statement
A. It causes the cursor to close
B. It causes the cursor to open
C. It loads the current row values into variables
D. It creates the variables to hold the current row values
Ans: B

9. What is the maximum number of handlers processed before the PL/SQL block is exited when an exception occurs?
A. Only one
B. All that apply
C. All referenced
D. None
Ans: A

10. For which trigger timing can you reference the NEW and OLD qualifiers?
A. Statement and Row
B. Statement only
C. Row only
D. Oracle Forms trigger
Ans: D

11. Which identifier is valid?
A. customer_12
B. loop
C. customer@orgA
D. 12customer
Ans: A

12. What is the value of customer_id within the nested block in the example below?
/* Start main block */
DECLARE
customer_id NUMBER(9) := 678;
credit_limit NUMBER(10,2) := 10000;
BEGIN
/* Start nested block */
DECLARE
customer_id VARCHAR2(9) := ‘AP56’;
current_balance NUMBER(10,2) := 467.87;
BEGIN
— what is the value of customer_id at this point?
NULL;
END;
END;
Please select the best answer.
A. 678
B. 10000
C. ‘AP56’
D. 467.87
Ans: B.

13. For which task is it best to use a character string enclosed by double quotes? Please select the best answer.
A. Referring to a column in the database
B. Using a reserved word to declare an identifier
C. Using a hyphen to concatenate two columns
D. Referring to a number variable by using a logical operator
Ans: B.

14. What is the maximum number of exception handlers processed before the PL/SQL block is exited, provided an exception occurs? Please select the best answer.
A. None
B. All exceptions that are referenced in the block
C. One
D. All exceptions that apply
Ans: C.

15. Which functions can be used with any datatype? Please select all the correct answers.
A. SUM
B. MIN
C. MAX
D. AVG
The correct answers are B and C.

16. Select incorrect variable declarations
A. foo_number varchar2(10);
B. foo_text number(10);
C. foo_char char(1) := ‘Y’;
D. foo_time date;
E. foo_text varchar2(10) := ‘hello world’;
Ans: E

17. Select invalid variable types
A. CHAR
B. VARCHAR1
C. VARCHAR2
D. INTEGER
E. NUMBER
ANS: B

18. List the correct sequence of commands to process a set of records when using explicit cursors
A. INITIALIZE, GET, CLOSE
B. CURSOR, GET, FETCH, CLOSE
C. OPEN, FETCH, CLOSE
D. CURSOR, FETCH, CLOSE
E. GET, SEEK, HIDE
ANS: C

19. Select incorrect variable declarations
A. foo_number varchar2(10);
B. foo_text number(10);
C. foo_char char(1) := ‘Y’;
D. foo_time date;
E. foo_text varchar2(10) := ‘hello world’;
Ans: E

20. Select invalid variable types
A. CHAR
B. VARCHAR1
C. VARCHAR2
D. INTEGER
E. NUMBER
ANS: B

21. List the correct sequence of commands to process a set of records when using explicit cursors
A. INITIALIZE, GET, CLOSE
B. CURSOR, GET, FETCH, CLOSE
C. OPEN, FETCH, CLOSE
D. CURSOR, FETCH, CLOSE
E. GET, SEEK, HIDE
ANS: C

22. Where do you declare an explicit cursor in the PL/SQL language?
A. In the PL/SQL working storage section
B. In the PL/SQL declaration section
C. In the PL/SQL body section
D. In the PL/SQL exception section
E. None of the above
ANS: B

23. Assuming the date and time is 09/09/2009 09:09:09, what value will the following statement return SELECT TO_CHAR(TRUNC(SYSDATE),’MM/DD/YYYY HH24:MI:SS’) FROM dual;
A. 09/09/2009 09:09:09
B. 09/09/2009 09:09:09AM
C. 09/09/2009
D. 09/09/2009 00:00:00
E. None of the above
ANS: D

24. The || is is an example of what function
SELECT last_name || ‘, ‘ || first_name || ‘ ‘ || middle_name
FROM employees;
A. Incantination
B. Integration
C. Continuation
D. Concatenation
E. None of the above
ANS: D

25. Which of the following is not an Oracle DML function?
A. DECODE
B. TRUNCATE
C. TO_CHAR
D. NVL
E. Trick question, all of these are Oracle DML functio
ANS: B

26. Select the invalid PL/SQL looping construct.
A. WHILE LOOP

END LOOP;
B. FOR rec IN some_cursor LOOP

END LOOP;
C. LOOP

UNTIL ;
END LOOP;
D. LOOP

EXIT WHEN ;
END LOOP;
E. None of the above. All are valid.
ANS: C.D

27. Select the best answer. Which listed attribute is an invalid attribute of an Explicit cursor.
A. %NOTFOUND
B. %FOUND
C. %ROWCOUNT
D. %ISOPEN
E. None of the above. All of these are valid.
ANS: E

28. Which of the following is not a grouping function.
A. COUNT
B. SUM
C. DISTINCT
D. MIN
E. All of the above.
ANS: C

29. Which of the following is not a valid Oracle PL/SQL exception.
A. NO_DATA_FOUND ORA-01403
B. TWO_MANY_ROWS ORA-01422
C. DUP_VAL_ON_INDEX ORA-00001
D. OTHERS
E. None of the above. These are all valid.
ANS: B

30. What command can you use to see the errors from a recently created view or stored procedure?
A. SHOW MISTAKES;
B. DISPLAY MISTAKES;
C. DISPLAY ERRORS;
D. SHOW ERRORS;
E. None of the above.
ANS: D

31. Select the best answer below. What are the components of a package?
A. Box, wrapping and binding
B. Header and body
C. Specification and content
D. Specification and body
E. None of the above
ANS: D

32. PL/SQL subprograms, unlike anonymous blocks, are compiled each time they are executed. True or False?
a. True
b.False
ANS: A

33. Subprograms and anonymous blocks can be called by other applications. True or False?
a.True
b.False
ANS: A

34. A nested subprogram can be called from the main procedure or from the calling environment. Trueor False?
a. True
b. False
ANS: B

35. When modifying procedure code, the procedure must be re-executed to validate and store it in the database. True or False?
a. True
b. False
ANS: A

36. Which of the following can be used as an argument for a procedure parameter?
a.The name of a variable.
b.A literal value.
c.An expression.
d.All of the above.
e.None of the above
ANS: D

37. If you don’t specify a mode for a parameter, what is the default mode?
a.OUT
b.IN
c.COPY
d.DEFAULT
e.R(ead)
ANS: B

38. Which kind of parameters cannot have a DEFAULT value?
a.OUT
b.IN
c.CONSTANT
d.R(ead)
e.W(rite)
ANS: A

39. What are the three parameter modes for procedures?
a.IN, OUT, IN OUT
b.R(ead), W(rite), A(ppend)
c.CONSTANT, VARIABLE, DEFAULT
d.COPY, NOCOPY, REF
ANS: A

40. Which one of the following statements about formal and actual parameters is true?
a.Formal and actual parameters must have the same name.
b.Formal and actual parameters must have different names.
c.A formal parameter is declared within the called procedure, while an actual parameter is declared in thecalling environment.
d.An actual parameter is declared within the called procedure.
ANS: C

Frequently Asked PL/SQL Objective Questions Answers