Hard code value in varray and use for loop to insert them to a table : varray « PL SQL « Oracle PL / SQL

Home
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
Oracle PL / SQL » PL SQL » varray 
Hard code value in varray and use for loop to insert them to a table
   
SQL> create table gift(
  2          gift_id          integer     primary key
  3          ,price                  number(7,2)
  4          ,description            varchar2(75)
  5          ,onhand                 number(5,0)
  6          ,reorder                number(5,0)
  7          ,supplier_no            integer
  8  );

Table created.

SQL> -- gift Table Inserts:
SQL> insert into gift(gift_id, price, description, onhand, reorder)values (1,2.50,'Happy Birthday',100,20);

row created.

SQL> insert into gift(gift_id, price, description, onhand, reorder)values (2,23.00,'Happy Birthday',null,null);

row created.

SQL> insert into gift(gift_id, price, description, onhand, reorder)values (3,null,'Happy New Year',null,null);

row created.

SQL> insert into gift(gift_id, price, description, onhand, reorder)values (4,1.50,'Happy New Year',50,10);

row created.

SQL>
SQL>
SQL> CREATE SEQUENCE gift_seq
  2  INCREMENT BY 1
  3  START WITH 9
  4  NOMAXVALUE
  5  NOCYCLE;

Sequence created.

SQL>
SQL> CREATE OR REPLACE PROCEDURE p_add_prod (v_supplier IN number, v_ctr IN number)
  2  AS
  3      i  number := 1;
  4      idIndex  number := 1;
  5      newOrder   gift.reorder%TYPE;
  6
  7      TYPE names IS VARRAY(10OF VARCHAR2(75);
  8      v_names names := names('A','B','C','D','E','F','G','H','I','J');
  9
 10      TYPE Prod_Prices IS VARRAY(10OF NUMBER(7,2);
 11      v_prices    Prod_prices := Prod_prices(2,2.25,3,4.2,6,12.4,11.7,9.25,5,7.5);
 12
 13      TYPE Prod_Onhand IS VARRAY(10OF NUMBER;
 14      v_onhand    Prod_Onhand := Prod_Onhand(70,20,10,40,30,50,60,80,90,55);
 15
 16  begin
 17
 18      WHILE i <= v_ctr LOOP
 19          IF idIndex > 10 THEN
 20              idIndex := 1;
 21          END IF;
 22
 23          IF v_onhand(idIndex>= 30 THEN
 24             newOrder := v_onhand(idIndex10;
 25          ELSE
 26             newOrder := v_onhand(idIndex5;
 27          END IF;
 28
 29          INSERT INTO gift (gift_ID, PRICE, DESCRIPTION, ONHAND, REORDER, SUPPLIER_NO)
 30          VALUES (gift_seq.NEXTVAL, v_prices(idIndex), v_names(idIndex), v_onhand(idIndex), newOrder, v_supplier);
 31
 32          i := i + ;
 33          idIndex := idIndex + 1;
 34
 35      END LOOP;
 36  end;
 37  /

Procedure created.

SQL>
SQL> show errors
No errors.
SQL>
SQL> drop SEQUENCE gift_seq;

Sequence dropped.

SQL>
SQL> drop table gift;

Table dropped.

SQL>
SQL>

   
    
    
  
Related examples in the same category
1.Varray constructors.
2.legal and illegal varray assignments.
3.TYPE Strings IS VARRAY(5) OF VARCHAR2(10)
4.Create a varray based on user defined type
5.Store pre-defined constants in VARRAY
6.Creating and Using VARRAYs
7.Query a stored varray.
8.VARRAY of VARCHAR2 and Varray of number
9.Table of numbers and varray of numbers
10.Initialize the array and create two entries using the constructor
11.Reference elements in varray
12.assignments to varray elements, and the ORA-6532 and ORA-6533 errors.
13.ORA-06533: Subscript beyond count
14.Compare two varray variables
15.Constructs a two varrays and one nested table type in the database
16.Control varray index with if statement
17.Create type prices with a varray of number
18.Declare the varray with null values.
19.Declaring a VARRAY of scalar variable
20.Define a varray of integer with 3 rows
21.Define a varray of twelve strings.
22.Define a varray with a null element constructor and extends it one element at a time by a formula
23.Define a varray with a null element constructor and extends it one element at a time.
24.Define a varray with a three element constructor of null elements and attempt to populate it beyond three elements.
25.Define a varray with a three element constructor of null elements.
26.Nested varray
27.Reference varray.count in for loop
28.Store 12 months in varray of string
29.Use table() function to display varray type column
30.exceeded maximum VARRAY limit
31.Assign values to subscripted members of the varray.
32.Check the size of a varray
33.Declare an array initialized as a no-element collection.
34.Extend with null element to the maximum limit size.
35.Initialization and assignment with a numeric index value to an associative array.
36.Initialization and assignment with a unique string index value to an associative array.
37.Associative array example
38.Assigns a value to the indexed value.
39.Avoid traversing an associative array where no elements are initialized.
40.Subscript index values begin at 1, not 0
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.