Use the function we created: use the table alias in our SELECT as well as the qualifier : Select « Object Oriented Database « Oracle PL / SQL






Use the function we created: use the table alias in our SELECT as well as the qualifier



SQL> CREATE OR REPLACE TYPE aobj AS object (
  2                    state CHAR(2),
  3                    amt NUMBER(5),
  4
  5                    MEMBER FUNCTION mult (times in number) RETURN number,
  6                    PRAGMA RESTRICT_REFERENCES(mult, WNDS));
  7  /

Type created.

SQL>
SQL> CREATE OR REPLACE TYPE BODY aobj AS
  2    MEMBER FUNCTION mult (times in number) RETURN number
  3    IS
  4    BEGIN
  5      RETURN times * self.amt; /* SEE BELOW */
  6    END;
  7  END;
  8  /

Type body created.

SQL>
SQL> CREATE TABLE aobjtable (arow aobj);

Table created.

SQL>
SQL>
SQL>
SQL> INSERT INTO aobjtable VALUES (aobj('FL',25));

1 row created.

SQL> INSERT INTO aobjtable VALUES (aobj('AL',35));

1 row created.

SQL> INSERT INTO aobjtable VALUES (aobj('OH',15));

1 row created.

SQL>
SQL> -- Use the function we created: use the table alias in our SELECT as well as the qualifier, arow:
SQL>
SQL> SELECT x.arow.state, x.arow.amt, x.arow.mult(2)
  2  FROM aobjtable x;

AR   AROW.AMT X.AROW.MULT(2)
-- ---------- --------------
FL         25             50
AL         35             70
OH         15             30

SQL>
SQL>
SQL> DESC aobjtable;
 Name                                                                                                  Null?    Type
 ----------------------------------------------------------------------------------------------------- -------- --------------------------------------------------------------------
 AROW                                                                                                   AOBJ

SQL>
SQL> drop table aobjtable;

Table dropped.

SQL>
SQL>
           
       








Related examples in the same category

1.Display the New Table (SELECT * and SELECT by Column Name)
2.Query object table
3.Use type member function in select statement
4.SELECT Only One Column in the Composite
5.SELECT with a WHERE Clause
6.Query data from table based on object
7.SELECTing Individual Columns in TCROs
8.Use * to reference column with user-defined type
9.demonstrates SQL operations on object types.
10.Select the object type from the table, rather than the columns.
11.Use %ROWTYPE to select from the relational table.