A package to manage a list of employees : Table of Type « PL SQL « Oracle PL / SQL

Oracle PL / SQL
1. Aggregate Functions
2. Analytical Functions
3. Char Functions
4. Constraints
5. Conversion Functions
6. Cursor
7. Data Type
8. Date Timezone
9. Hierarchical Query
10. Index
11. Insert Delete Update
12. Large Objects
13. Numeric Math Functions
14. Object Oriented Database
15. PL SQL
16. Regular Expressions
17. Report Column Page
18. Result Set
19. Select Query
20. Sequence
21. SQL Plus
22. Stored Procedure Function
23. Subquery
24. System Packages
25. System Tables Views
26. Table
27. Table Joins
28. Trigger
29. User Previliege
30. View
31. XML
Java
Java Tutorial
Java Source Code / Java Documentation
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Oracle PL / SQL » PL SQL » Table of Type 
A package to manage a list of employees
    
SQL>
SQL> CREATE TABLE employee(
  2           emp_id           INTEGER,
  3           emp_name         VARCHAR2(32),
  4           supervised_by    INTEGER,
  5           pay_rate         NUMBER(9,2),
  6           pay_type         CHAR);

Table created.

SQL>
SQL> CREATE TABLE department
  2         (dept_id           INTEGER,
  3          dept_name         VARCHAR2(32));

Table created.

SQL>
SQL> CREATE TABLE emp_dept (emp_id INTEGER, dept_id INTEGER);

Table created.

SQL>
SQL>
SQL> CREATE OR REPLACE package emp_dept_procs AS
  2      PROCEDURE init_list;
  3      PROCEDURE add_to_list (emp_id IN emp_dept.emp_id%TYPE,dept_id IN emp_dept.dept_id%TYPE);
  4      FUNCTION get_count RETURN NUMBER;
  5      PROCEDURE get_from_list (to_get IN BINARY_INTEGER,emp_id OUT emp_dept.emp_id%TYPE,dept_id OUT emp_dept.dept_id%TYPE);
  6      END emp_dept_procs;
  7     /

Package created.

SQL>
SQL>    CREATE OR REPLACE package body emp_dept_procs AS
  2        listx   BINARY_INTEGER;
  3        TYPE emp_dept_pk IS RECORD (emp_id  emp_dept.emp_id%TYPE,dept_id emp_dept.dept_id%TYPE);
  4        TYPE emp_dept_list_type IS TABLE OF emp_dept_pk INDEX BY BINARY_INTEGER;
  5
  6        emp_dept_list   emp_dept_list_type;
  7
  8     PROCEDURE init_list is
  9     BEGIN
 10         listx := 0;
 11     END;
 12
 13     PROCEDURE add_to_list (emp_id IN emp_dept.emp_id%TYPE ,dept_id IN emp_dept.dept_id%TYPEIS
 14     BEGIN
 15         listx := listx + 1;
 16         emp_dept_list(listx).emp_id := emp_id;
 17         emp_dept_list(listx).dept_id := dept_id;
 18     END;
 19
 20     FUNCTION get_count RETURN NUMBER IS
 21     BEGIN
 22         RETURN listx;
 23     END;
 24
 25     PROCEDURE get_from_list (to_get IN BINARY_INTEGER ,emp_id OUT emp_dept.emp_id%TYPE ,dept_id OUT emp_dept.dept_id%TYPEIS
 26     BEGIN
 27         emp_id := emp_dept_list(to_get).emp_id;
 28         dept_id := emp_dept_list(to_get).dept_id;
 29     END;
 30
 31  END emp_dept_procs;
 32  /

Package body created.

SQL>
SQL> drop table department;

Table dropped.

SQL> drop table employee;

Table dropped.

SQL> --

   
    
    
  
Related examples in the same category
1. Create a function to convert string type variable to date type variable
2. Fetch a bulk into a table structure
3. Define a nested table type for each column
4. Extend once, outside the loop for better performance
5. Fill table of custom type and use it in for loop to insert
6. Table of custome type indexed by BINARY_INTEGER
7. Reference type attribute through index
8. Use for loop to fill a table collection
9. Select bulk collect into
10. Use for loop to insert value to table collection and then use table collection in another insert statement
11. The EXISTS Table Attribute
12. FIRST & LAST Table Attributes
13. NEXT & PRIOR Table Attributes
14. Uses the COUNT method to display the number of rows contained in a table collection
15. How to do a bulk collect into a nested table.
16. How to do a bulk collect into an associative array
17. Table collection indexed by column type
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.