You are on page 1of 2

--varrays

/*The number of elements is known in advance.

The elements are usually accessed sequentially.

When stored in the database,


varrays keep their ordering and subscripts.

A varray is stored as a single object.


If a varray is less than 4 KB,
it is stored inside the table of which it is a column;
otherwise,
it is stored outside the table but in the same tablespace.
*/
/
declare type my_var1 is varray(5) of number;
var1 my_var1:=my_var1();
begin
dbms_output.put_line(var1.limit); -- only work with varray
dbms_output.put_line(var1.count);

for i in 1..var1.limit loop


var1(i):=i*10;
dbms_output.put_line(var1(i));
end loop;
end;
/
declare type my_var1 is varray(5) of number;
var1 my_var1:=my_var1(null,null,null,null,null);
begin
for i in 1..var1.limit loop
var1(i):=i*10;
dbms_output.put_line(var1(i));
end loop;
end;
/
declare type my_var1 is varray(5) of number;
var1 my_var1:=my_var1();
begin
var1.extend(5);
for i in 1..var1.limit loop
var1(i):=i*10;
dbms_output.put_line(var1(i));
end loop;
end;
/
declare type my_var1 is varray(5) of number;
var1 my_var1:=my_var1();
begin
for i in 1..var1.limit loop
var1.extend;
var1(i):=i*10;
dbms_output.put_line(var1(i));
end loop;
end;
/

/
create or replace type date_obj is varray(5) of number;
/
create table calendar111
(
day_name varchar2(20),
day_date date_obj);
/
insert into calendar111
values('Tuesday',date_obj(4,11,18,26));
/
select * from calendar111;
/
select tab1.day_name,
vry.column_value from calendar111 tab1,
table(tab1.day_date) vry;
/
DECLARE
TYPE emp_mail IS VARRAY(5) OF VARCHAR2(20);
mails emp_mail := emp_mail('NKOCHAR', 'LDEHAAN', 'AHUNOLD','hello','hai');
BEGIN
FOR i IN mails.FIRST..mails.LAST LOOP
DBMS_OUTPUT.PUT_LINE(mails(i));
END LOOP;
END;
/
select * from employees e,employees e1;
__________________________________________________________________________________

You might also like