Parameter and keyword description - object types, PL-SQL Programming

Assignment Help:

Parameter and Keyword Description:

type_name:

This identifies a user-defined type specifier that is used in the subsequent declarations of the objects.

AUTHID Clause:

This determines whether all the member methods execute with the rights of their definer (the default) or invoker, and whether their untrained references to schema objects are solved in the schema of the invoker or definer.

attribute_name:

This identifies the object attribute. The name should be exclusive within the object type, however can be reuse in the other object types. You can't initialize an attribute in its declaration by using the assignment operator or DEFAULT clause. Also, you cannot force the NOT NULL constraint on an attribute.

attribute_datatype:

This is any Oracle datatype excluding LONG, LONG RAW, NCLOB, NCHAR, NVARCHAR2, ROWID, the PL/SQL-specific types BINARY_INTEGER, BOOLEAN, PLS_INTEGER, RECORD, REF CURSOR, %TYPE, & %ROWTYPE, and types defined inside the PL/SQL package.

MEMBER | STATIC:

This keyword allows you to state a subprogram or call specification as a method in an object type specification. The method cannot have similar name as the object type or any of its attributes. The MEMBER methods are invoked on instances, which is as shown below:

instance_expression.method()

Though, the STATIC methods are invoked on the object type, not its instances, as shown:

object_type_name.method()

For each of the subprogram specification in an object type specification, there should be an equivalent subprogram body in the object type body. To match specifications and bodies, the compilers do a token-by-token comparison of their headers. Therefore, the headers should match word for word.

The MEMBER methods accept a built-in parameter named SELF that is an instance of the object type. Whether it is declared explicitly or implicitly, it is forever the first parameter passed to a MEMBER method. Though, the STATIC methods cannot accept or reference SELF.

In the method body, the SELF represents the object whose method was invoked. For illustration, the method transform declares SELF as an IN OUT parameter:

CREATE TYPE Complex AS OBJECT (

MEMBER FUNCTION transform (SELF IN OUT Complex) ...

MAP:

This keyword indicate that a method orders objects by mapping them to the values of a scalar datatype like CHAR or REAL, that have a predefined order. The PL/SQL uses the ordering to compute Boolean expressions like x > y, and to do comparisons implied by the GROUP BY, DISTINCT, and ORDER BY clauses. A map method returns the relative place of an object in the ordering of all such objects.

An object type can hold only one map method that should be a parameter less function having the return type NUMBER, DATE, VARCHAR2, or an ANSI SQL type like INTEGER, CHARACTER, or REAL.

ORDER:

This keyword specifies that a method compares two objects. An object type can hold only one order method that should be a function which returns a numeric result.

Every order method takes merely two parameters: the built-in parameter SELF and the other object of the same type. When c1 and c2 are Customer objects, a comparison like c1 > c2 calls method match automatically. The method returns a zero, negative number, or a positive number signifying that the SELF is respectively equal to, less than, or greater than the other parameter. When either parameter passed to an order method is null, and the method returns a null.

subprogram_spec:

This construct declares the interface to the member function or procedure. Its syntax is similar to that of function_spec or procedure_spec without the terminator.

subprogram_body:

This construct defines the underlying implementation of the member function or procedure. Its syntax is similar to that of function_body or procedure_body without the terminator.

call_spec:

This publishes a Java method or the external C function in the Oracle data dictionary. It publishes the practice by mapping its parameter types, name, and return type to their SQL counterparts. 


Related Discussions:- Parameter and keyword description - object types

Object types - syntax, Object Types An object type is a user-defined co...

Object Types An object type is a user-defined complex datatype which encapsulates the data structure along with the functions and procedures required to manipulate the data. Th

Seeking a programmer to design a legal document, Seeking a programmer to de...

Seeking a programmer to design a legal document with pre-existing fields that could allow the auto-population of client(s) information (i.e. Name, Account Number, Address etc.) int

Declaring objects in pl/sql, Declaring Objects: You can use the object ...

Declaring Objects: You can use the object types wherever built-in types like CHAR or NUMBER can be used. In the block below, you can declare object r of type Rational. Then, yo

Comparison operators - sql operators, Comparison Operators Usually, yo...

Comparison Operators Usually, you use the comparison operators in the WHERE clause of a data manipulation statement to form the predicates, that compare one expression to anot

Renaming columns - sql, Renaming Columns - SQL SQL has no direct count...

Renaming Columns - SQL SQL has no direct counterpart of RENAME. To derive the table on the right in Figure 4.4 from the table on the left, Tutorial D has IS_CALLED RENAME ( St

Data types in sql - interval, Data Types in SQL - Interval, Boolean I...

Data Types in SQL - Interval, Boolean INTERVAL for values denoting, not intervals (!) but durations in time, such as 5 years, 3 days, 2 minutes, and so on. BOOLEAN, con

Using extend - collection method, Using EXTEND To enlarge the size of ...

Using EXTEND To enlarge the size of a collection, use EXTEND. This process has 3 forms. The EXTEND appends one null element to a collection. And the EXTEND(n) appends n null e

Exception_init pragma - pl/sql, EXCEPTION_INIT Pragma The pragma EXCEPT...

EXCEPTION_INIT Pragma The pragma EXCEPTION_INIT relates an exception name with an Oracle error number. Which allow you to refer to any internal exception by the name and to wri

Defining ref cursor types, Defining REF CURSOR Types To make cursor va...

Defining REF CURSOR Types To make cursor variables, you take 2 steps. At first, you define a REF CURSOR type, and then declare the cursor variables of that type. You can defin

%found - explicit cursor attributes, %FOUND Subsequent to a cursor or ...

%FOUND Subsequent to a cursor or cursor variable is opened but before the first fetch, the %FOUND yields NULL. Afterward, it yields TRUE when the last fetch returned a row, or

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