Skip to content

Commit 8222081

Browse files
Add files via upload
1 parent 2070900 commit 8222081

File tree

1 file changed

+55
-0
lines changed

1 file changed

+55
-0
lines changed

varray_03.sql

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
SET SERVEROUTPUT ON;
2+
3+
/* Creating a array for storing 5 emails of each VARCHAR2(100) */
4+
5+
CREATE OR REPLACE TYPE emaillist AS
6+
VARRAY(5) OF VARCHAR2(100);
7+
/
8+
/* Creating a database table having column that store varray. Each varray is VARCHAR2(100) */
9+
10+
CREATE TABLE customers_emails (
11+
customer_id NUMBER,
12+
full_name VARCHAR2(100 BYTE),
13+
emails emaillist
14+
);
15+
16+
DECLARE
17+
lv_email emaillist;
18+
lv_full_name customers_emails.full_name%TYPE;
19+
BEGIN
20+
DELETE FROM customers_emails;
21+
22+
INSERT INTO customers_emails VALUES (
23+
286,
24+
'Wilfred Welch',
25+
emaillist('wilfred.welch1@internalmail', 'wilfred.welch2@internalmail')
26+
);
27+
28+
INSERT INTO customers_emails VALUES (
29+
287,
30+
'Wilfred Welch',
31+
emaillist('kristina.nunez2@internalmail', 'kristina.nunez2@internalmail')
32+
);
33+
34+
COMMIT;
35+
36+
/* Retrieving vaaray values */
37+
SELECT
38+
full_name,
39+
emails
40+
INTO
41+
lv_full_name,
42+
lv_email
43+
FROM
44+
customers_emails
45+
WHERE
46+
customer_id = 286;
47+
48+
FOR i IN 1..lv_email.count LOOP
49+
dbms_output.put_line(lv_full_name
50+
|| ' - '
51+
|| lv_email(i));
52+
END LOOP;
53+
54+
END;
55+
/

0 commit comments

Comments
 (0)