Oracle OWA_TEXT
Version 19.3

General Information
Library Note Morgan's Library Page Header
For how many years have you been working with physical servers that are starving your database of the memory necessary to deploy important new performance features such as the Result Cache, Memoptimize Pool, In-Memory Aggregation, In-Memory Column Store, and Full Database Caching? Too long? Contact me to learn how to improve all queries ... not just some queries.
Purpose Utitility procedures/functions for manipulating large amounts of text by the standard of 1995 when it was created.
AUTHID DEFINER
Data Types TYPE vc_arr IS TABLE OF VARCHAR2(32767) INDEX BY BINARY_INTEGER;

TYPE int_arr IS TABLE OF INTEGER INDEX BY BINARY_INTEGER;

TYPE multi_line IS RECORD (rows vc_arr, num_rows INTEGER, partial_row BOOLEAN);

TYPE row_list IS RECORD (rows int_arr, num_rows INTEGER);
Dependencies
DBMS_STANDARD HTP OWA_PATTERN
Documented No
First Available 8.1.7
Security Model Owned by SYS with
Source {ORACLE_HOME}/rdbms/admin/pubtext.sql
{ORACLE_HOME}/rdbms/admin/privtext.sql
Subprograms
 
ADD2MULTI
Add a new lineto a multi_line structure owa_text.add2multi(
stream   IN     VARCHAR2,
mline    IN OUT multi_line,
continue IN     BOOLEAN DEFAULT TRUE);
DECLARE
 bot VARCHAR2(32767);
 ml  owa_text.multi_line;
BEGIN
  bot := 'this is a bunch of text that goes on and on and on ...';
  -- extend this to beyond 32K if you wish <g>

  owa_text.new_multi(ml);
  owa_text.add2multi(bot, ml, TRUE);

  owa_text.print_multi(ml);

  owa_util.showpage;
END;
/
 
NEW_MULTI
Make element routine

Overload 1
owa_text.new_multi RETURN multi_line;
TBD
Overload 2 owa_text.new_multi(mline OUT multi_line);
See ADD2MULTI Demo Above
 
NEW_ROW_LIST
Standard creation routine for row lists

Overload 1
owa_text.new_multi RETURN return row_list;
TBD
Overload 2 owa_text.new_multi(rlist OUT row_list);
TBD
 
PRINT_MULTI
uses HTP.PRINT to print out a multi-line structure procedure owa_text.print_multi(mline IN multi_line);
See ADD2MULTI Demo Above
 
PRINT_ROW_LIST
Print a row list using HTP.PRINT owa_text.print_row_list(rlist IN row_list);
TBD
 
STREAM2MULTI
Takes in a single stream of text and turns it into a multi_line structure owa_text.stream2multi(
stream IN  VARCHAR2,
mline  OUT multi_line);
DECLARE
 bot VARCHAR2(32767);
 ml  owa_text.multi_line;
BEGIN
  bot := 'this is a bunch of text that goes on and on and on ...';
  -- extend this to beyond 32K if you wish <g>

  owa_text.stream2multi(bot, ml);

  owa_text.print_multi(ml);

  owa_util.showpage;
END;
/

Related Topics
Built-in Functions
Built-in Packages
OWA
OWA_CUSTOM
OWA_CX
OWA_OPT_LOCK
OWA_SEC
OWA_UTIL
What's New In 18cR3
What's New In 19cR3

Morgan's Library Page Footer
This site is maintained by Dan Morgan. Last Updated: This site is protected by copyright and trademark laws under U.S. and International law. © 1998-2019 Daniel A. Morgan All Rights Reserved