Oracle PL[s]SQL by Example

Lab 18.1 Self-Review Answers

A5:

Questions

Answers

Comments

1)

A

 

2)

C

You will recall that a following is always used in an index-by table declaration

INDEX BY BINARY_INTEGER;

3)

A

A nested table is automatically NULL when it is declared. As a result, it must be initialized prior to its use.

4)

C

If a PL/SQL table contains only one element, it is its first and last element. As a result, the FIRST method returns the subscript of the first element, 1, and the LAST method returns the subscript of the last element, 1.

5)

C

It is important to remember that a PL/SQL table in this case is a nested table. You will recall that the DELETE method cannot be used with a nested table.

Lab 18.2 Self-Review Answers

A5:

Questions

Answers

Comments

1)

A

You will recall that using a DELETE method on varrays causes a syntax error because varrays are dense.

2)

B

A varray can contain a number of elements, varying from zero (empty array) to its maximum size. In other words, an upper bond of the array can be extended to its maximum size.

3)

A

 

4)

C

The COUNT method returns the current number of varray elements, and the LIMIT method returns the maximum number of elements that a varray can contain.

5)

D

Because varrays cannot be sparse, a DELETE method causes a syntax error when it is issued against a varray.

Lab 18.3 Self-Review Answers

A5:

Questions

Answers

Comments

1)

A

 

2)

B

Regardless of its element type, an upper bound of a varray can be extended to its maximum size.

3)

B

A nested table must be initialized prior to its use regardless its element data type.

4)

C

Consider the statement

varray2(2)(3)

In this statement you are referencing the second element of varray2 and third element of varray1. Each element of varray2 is a varray of three integers defined as varray1 . Recall the following declaration statement:

varray2 varray_type2 := varray_type2(varray1, varray_type1 (4, 5, 6));

where varray_type1(4, 5, 6) is the second element of the varray2 . Notice that the third element of varray1 is 6. As a result, the variable var1 is assigned a value of 6.

5)

B

You will recall that the PL/SQL block contains the following statements:

varray2.EXTEND; varray2(3) := varray_type1(0); varray2(3).EXTEND;

The first statement increases the size of the varray2 . In other words, this statement adds the third element to the collection. The second statement initializes the third element of the varray2 via constructor associated with the varray type varray_type1 . This is done because each element of the varray2 is a varray of three integers. This adds one element to the varray1 . The third statement increases the size of the varray1 by adding a placeholder for the second element. In other words, it adds the second element to the third element of varray2 .

Категории