Collection methods in pl sql, PL-SQL Programming

Assignment Help:

Collection Methods:

 The collection method is a built-in function or procedure which operates on the collections and is called using the dot notation. The methods like the COUNT, EXISTS, LIMIT, FIRST, LAST, NEXT, EXTEND, PRIOR, TRIM, & DELETE helpful to normalize the code, make collections easier to use, and make your applications easier to sustain.

The COUNT, EXISTS, LIMIT, PRIOR, FIRST, LAST, and NEXT are the functions, that appear as part of an expression. The TRIM, EXTEND, and DELETE are the procedures, that appear as a statement. The EXISTS, NEXT, PRIOR, TRIM, EXTEND, and DELETE take integer parameters.

Syntax:

 

467_collaction function in pl sql.png

Keyword and Parameter Description

collection_name:

These identify an index-by table, varray, or nested table formerly declared within the present scope.

COUNT:

The COUNT returns to the number of elements which a collection presently contains, that is helpful as the present size of a collection is not always known. You can use the COUNT wherever an integer expression is allowed.

For varrays, the COUNT always equals to LAST. For nested tables, generally, COUNT equals to LAST. But, if you delete elements from the middle of the nested table, the COUNT is smaller than LAST.

DELETE:

This procedure has 3 forms. The DELETE eliminates all the elements from a collection. The DELETE (n) eliminates the nth element from a nested table. If n is null, the DELETE (n) does nothing. The DELETE (m,n) eliminates all the elements in the range of m..n from a nested table. If m is bigger than n or if m or n is null, then DELETE (m,n) does nothing.

Index:

This is an expression which should yield an integer.

EXISTS:

The EXISTS(n) returns TRUE when the nth element in a collection exists. Or else, EXISTS(n) returns FALSE. Primarily, you can use EXISTS with DELETE to sustain the sparse nested tables. You can also use the EXISTS to avoid raising an exception whenever you reference a nonexistent element. When passed an out-of-range subscript, the EXISTS returns FALSE rather than of raising the SUBSCRIPT_OUTSIDE_LIMIT.

EXTEND:

This procedure has 3 forms. The EXTEND appends one null element to the collection. The EXTEND(n) appends n null elements to the collection. The EXTEND(n,i) appends n copies of the ith element to the  collection. The EXTEND operates on the internal size of the collection. Therefore, if EXTEND encounters deleted elements, it involves them in its tally.

FIRST, LAST:

The FIRST & LAST return the first & last (lowest limit & upper limit) index numbers in a collection. If the collection is blank, the FIRST and LAST return NULL. When the collections contain only one element, the FIRST and LAST return similar index number. For varrays, the FIRST always returns 1 and the LAST always equals to COUNT. For the nested tables, generally, LAST equals to COUNT. But, when you delete elements from the middle of the nested table, the LAST is larger than COUNT.

LIMIT:

For the nested tables, which have no maximum size, the LIMIT returns NULL. For varrays, the LIMIT returns the maximum number of elements which a varray can contain (that you should specify in its type definition).

NEXT, PRIOR:

The PRIOR(n) returns the index number which precedes an index n in a collection. The NEXT(n) returns the index number which succeed index n. If n has no predecessor, then the PRIOR(n) returns NULL. Similarly, if n has no successor, the NEXT(n) returns the NULL.

TRIM:

This procedure has 2 forms. The TRIM eliminates one element from the end of the collection. The TRIM(n) eliuminates n elements from the end of the  collection. If n is bigger than COUNT, then the TRIM(n) raises the SUBSCRIPT_BEYOND_COUNT. The TRIM operates on the internal size of a collection. Therefore, if TRIM encounters deleted elements, it involves them in its tally.


Related Discussions:- Collection methods in pl sql

Assignments in pl/sql, Assignments in pl/sql The Variables and constants...

Assignments in pl/sql The Variables and constants are initialized every time a block or subprogram is entered. By default, the variables are initialized to NULL. Therefore, unle

Avoiding collection exceptions, Avoiding Collection Exceptions   In ma...

Avoiding Collection Exceptions   In many cases, if you reference a nonexistent collection element, then PL/SQL raises a predefined exception. Consider the illustration shown b

Benefit of the dynamic sql pl sql, Benefit of the dynamic SQL: This pa...

Benefit of the dynamic SQL: This part shows you how to take full benefit of the dynamic SQL and how to keep away from some of the common pitfalls. Passing the Names of Sc

Relational schema, query to Find the account numbers of all customers whose...

query to Find the account numbers of all customers whose balance is more than 10,000 $

Sql queries-oracle , 1- You can check attribute names from each table in D...

1- You can check attribute names from each table in DBF11 by running for example:  desc dbf11.Member;  desc dbf11.Agent;  desc dbf11.Producer; Because some attribute names in

Effects of null in aggregate operator - sql, Effects of NULL in Aggregate O...

Effects of NULL in Aggregate Operator - SQL Let aggop(x) be an invocation of some aggregate operator aggop in SQL, where x is an expression (usually an open expression) to be

Running the pl/sql wrapper, Running the PL/SQL Wrapper To run the PL/SQ...

Running the PL/SQL Wrapper To run the PL/SQL Wrapper, go through the wrap command at your operating system prompt by using the syntax as shown: wrap iname=input_file [oname=

Anatomy of a command, Anatomy of a Command Figure, showing a simple S...

Anatomy of a Command Figure, showing a simple SQL command, is almost identical to its counterpart in the theory book. The only difference arises from the fact that SQL uses a

Example of add constraint in sql, Example of ADD CONSTRAINT in SQL Exa...

Example of ADD CONSTRAINT in SQL Example: Alternative formulation for MAX_ENROLMENTS ALTER TABLE IS_ENROLLED_ON ADD CONSTRAINT MAX_ENROLMENTS CHECK ((SELECT COUNT (*)

Custom ms access database designed, I would like to have a custom MS Access...

I would like to have a custom MS Access database designed and coded that would help me schedule my customer's orders and that would help me track my employees production output and

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd