CREATE OR REPLACE TYPE names_nt IS TABLE OF VARCHAR2 ( 1000 );
Type created.
CREATE OR REPLACE FUNCTION lotsa_names (
base_name_in IN VARCHAR2
, count_in IN INTEGER
)
RETURN names_nt
IS
retval names_nt := names_nt ( );
BEGIN
retval.EXTEND ( count_in );
FOR indx IN 1 .. count_in
LOOP
retval ( indx ) := base_name_in || ' ' || indx;
END LOOP;
RETURN retval;
END lotsa_names;
Function created.
CREATE MATERIALIZED VIEW mv_names
BUILD IMMEDIATE
REFRESH COMPLETE ON DEMAND WITH PRIMARY KEY
AS
SELECT * FROM table (lotsa_names ('steven', 100))
Statement processed.