1 PACKAGE dbms_aw AUTHID CURRENT_USER AS
2
3 ---------------------
4 -- OVERVIEW
5 --
6 -- This package is the interface to the Express server routines.
7 -- interp - This function interprets an OLAP DML command and
8 -- returns the output as a character LOB.
9 -- execute - This procedure executes an OLAP DML command and uses
10 -- dbms_output to print the results.
11 --
12 ---------------------
13 -- Visibility
14 -- All users
15 --
16 ---------------------
17 -- PROCEDURES
18
19 PROCEDURE initdriver;
20 PROCEDURE startup;
21 PROCEDURE shutdown(force IN BOOLEAN DEFAULT FALSE);
22 PROCEDURE toggleDBCreate;
23 FUNCTION interpclob(cmd_clob IN CLOB) RETURN CLOB;
24 FUNCTION getlog return clob;
25 PROCEDURE printlog(log_clob IN CLOB);
26
27 -- Routines which handle output for the user
28 PROCEDURE run(cmd IN STRING, silent IN BOOLEAN DEFAULT FALSE);
29 PROCEDURE run(cmd IN CLOB, silent IN BOOLEAN DEFAULT FALSE);
30
31 -- Routines which pass data back
32 PROCEDURE run(cmd IN STRING, output OUT STRING);
33 PROCEDURE run(cmd IN STRING, output IN OUT NOCOPY CLOB);
34 PROCEDURE run(cmd IN CLOB, output OUT STRING);
35 PROCEDURE run(cmd IN CLOB, output IN OUT NOCOPY CLOB);
36
37 PROCEDURE execute(cmd IN STRING);
38 FUNCTION interp(cmd IN string) RETURN clob;
39 PROCEDURE interp_silent(cmd IN STRING);
40 PROCEDURE infile(ifilename IN STRING);
41
42 FUNCTION eval_number(cmd IN STRING) RETURN NUMBER;
43 FUNCTION eval_text(cmd IN STRING) RETURN VARCHAR2;
44
45 FUNCTION olap_on RETURN BOOLEAN;
46 FUNCTION olap_running RETURN BOOLEAN;
47 FUNCTION olap_active RETURN BOOLEAN;
48
49 PROCEDURE advise_rel( relname IN VARCHAR2,
50 valueset IN VARCHAR2,
51 pct IN BINARY_INTEGER DEFAULT 20,
52 compressed IN BOOLEAN DEFAULT FALSE);
53 PROCEDURE advise_cube( aggmap IN VARCHAR2,
54 pct IN BINARY_INTEGER DEFAULT 20,
55 compressed IN BOOLEAN DEFAULT FALSE);
56
57 PROCEDURE enable_access_tracking(objname IN VARCHAR2);
58 PROCEDURE disable_access_tracking(objname IN VARCHAR2);
59 PROCEDURE clean_access_tracking(objname IN VARCHAR2);
60
61 NO_HIER CONSTANT BINARY_INTEGER := 0;
62 MEASURE CONSTANT BINARY_INTEGER := 1;
63 HIER_PARENTCHILD CONSTANT BINARY_INTEGER := 2;
64 HIER_LEVELS CONSTANT BINARY_INTEGER := 3;
65 HIER_SNOWFLAKE CONSTANT BINARY_INTEGER := 4;
66
67 PARTBY_DEFAULT CONSTANT BINARY_INTEGER := 0;
68 PARTBY_NONE CONSTANT BINARY_INTEGER := 1;
69 PARTBY_FORCE CONSTANT BINARY_INTEGER := 2147483647;
70
71 ADVICE_DEFAULT CONSTANT BINARY_INTEGER := 0;
72 ADVICE_FAST CONSTANT BINARY_INTEGER := 1;
73 ADVICE_FULL CONSTANT BINARY_INTEGER := 2;
74 ADVICE_NOSAMPLE CONSTANT BINARY_INTEGER := 3;
75
76 PROCEDURE sparsity_advice_table(tblname IN VARCHAR2 DEFAULT NULL);
77
78 PROCEDURE add_dimension_source(dimname IN VARCHAR2,
79 colname IN VARCHAR2,
80 sources IN OUT dbms_aw$_dimension_sources_t,
81 srcval IN VARCHAR2 DEFAULT NULL,
82 dimtype IN NUMBER DEFAULT NO_HIER,
83 hiercols IN dbms_aw$_columnlist_t
84 DEFAULT NULL,
85 partby IN NUMBER
86 DEFAULT PARTBY_DEFAULT);
87
88 PROCEDURE advise_sparsity(fact IN VARCHAR2,
89 cubename IN VARCHAR2,
90 dimsources IN dbms_aw$_dimension_sources_t,
91 advmode IN BINARY_INTEGER
92 DEFAULT ADVICE_DEFAULT,
93 partby IN BINARY_INTEGER
94 DEFAULT PARTBY_DEFAULT,
95 advtable IN VARCHAR2 DEFAULT NULL);
96
97 FUNCTION advise_dimensionality(cubename IN VARCHAR2,
98 sparsedfn OUT VARCHAR2,
99 sparsename IN VARCHAR2 DEFAULT NULL,
100 partnum IN NUMBER DEFAULT 1,
101 advtable IN VARCHAR2 DEFAULT NULL)
102 RETURN VARCHAR2;
103 PROCEDURE advise_dimensionality(output OUT NOCOPY CLOB,
104 cubename IN VARCHAR2,
105 sparsename IN VARCHAR2 DEFAULT NULL,
106 dtype IN VARCHAR2 DEFAULT 'NUMBER',
107 advtable IN VARCHAR2 DEFAULT NULL);
108 FUNCTION advise_partitioning_dimension(cubename IN VARCHAR2,
109 dimsources IN dbms_aw$_dimension_sources_t,
110 advtable IN VARCHAR2 DEFAULT NULL)
111 RETURN VARCHAR2;
112 FUNCTION advise_partitioning_level(cubename IN VARCHAR2,
113 dimsources IN dbms_aw$_dimension_sources_t,
114 advtable IN VARCHAR2 DEFAULT NULL)
115 RETURN VARCHAR2;
116
117 PROCEDURE aw_update(name IN VARCHAR2 DEFAULT NULL);
118 PROCEDURE aw_update(schema IN VARCHAR2,
119 name IN VARCHAR2);
120
121 PROCEDURE aw_attach(name IN VARCHAR2,
122 forwrite IN BOOLEAN DEFAULT FALSE,
123 createaw IN BOOLEAN DEFAULT FALSE,
124 attargs IN VARCHAR2 DEFAULT NULL,
125 tbspace IN VARCHAR2 DEFAULT NULL);
126 PROCEDURE aw_attach(schema IN VARCHAR2,
127 name IN VARCHAR2,
128 forwrite IN BOOLEAN DEFAULT FALSE,
129 createaw IN BOOLEAN DEFAULT FALSE,
130 attargs IN VARCHAR2 DEFAULT NULL,
131 tbspace IN VARCHAR2 DEFAULT NULL);
132
133 PROCEDURE aw_detach(name IN VARCHAR2);
134
135 PROCEDURE aw_detach(schema IN VARCHAR2,
136 name IN VARCHAR2);
137
138 PROCEDURE aw_create(name IN VARCHAR2,
139 tbspace IN VARCHAR2 DEFAULT NULL,
140 partnum IN NUMBER DEFAULT NULL);
141
142 PROCEDURE aw_create(schema IN VARCHAR2,
143 name IN VARCHAR2,
144 tbspace IN VARCHAR2 DEFAULT NULL,
145 partnum IN NUMBER DEFAULT NULL);
146
147 PROCEDURE aw_copy(oldname IN VARCHAR2,
148 newname IN VARCHAR2,
149 newtablespace IN VARCHAR2 DEFAULT NULL,
150 partnum IN NUMBER DEFAULT NULL);
151
152 PROCEDURE aw_copy(oldschema IN VARCHAR2,
153 oldname IN VARCHAR2,
154 newname IN VARCHAR2,
155 newtablespace IN VARCHAR2 DEFAULT NULL,
156 partnum IN NUMBER DEFAULT NULL);
157
158 PROCEDURE aw_delete(name IN VARCHAR2);
159 PROCEDURE aw_delete(schema IN VARCHAR2,
160 name IN VARCHAR2);
161
162 PROCEDURE aw_rename(inname IN VARCHAR2,
163 outname IN VARCHAR2);
164
165 FUNCTION aw_tablespace(schema IN VARCHAR2,
166 name IN VARCHAR2) RETURN VARCHAR2;
167
168 FUNCTION aw_tablespace(name IN VARCHAR2) RETURN VARCHAR2;
169
170 FUNCTION aw_is_system(schema IN VARCHAR2,
171 name IN VARCHAR2) RETURN BOOLEAN;
172
173 TYPE eif_t IS TABLE OF BLOB NOT NULL;
174 TYPE eif_objlist_t IS TABLE OF VARCHAR2(100);
175
176 -- Enumerated Types for the datadfns param to EIF import
177 EIFIMP_DATA CONSTANT BINARY_INTEGER := 1;
178 EIFIMP_DEFINES CONSTANT BINARY_INTEGER := 2;
179 EIFIMP_DFNS CONSTANT BINARY_INTEGER := EIFIMP_DEFINES;
180 EIFIMP_DATADEFINES CONSTANT BINARY_INTEGER := 3;
181 EIFIMP_DATADFNS CONSTANT BINARY_INTEGER := EIFIMP_DATADEFINES;
182
183 AWNAME_IS_NULL EXCEPTION;
184
185 FUNCTION eif_blob_out(name IN VARCHAR2,
186 objlist IN eif_objlist_t DEFAULT NULL,
187 api IN BOOLEAN DEFAULT TRUE) RETURN BLOB;
188 FUNCTION eif_blob_out(schema IN VARCHAR2, name IN VARCHAR2,
189 objlist IN eif_objlist_t DEFAULT NULL,
190 api IN BOOLEAN DEFAULT TRUE) RETURN BLOB;
191 PROCEDURE eif_blob_in(name IN VARCHAR2, implob IN BLOB,
192 datadfns IN BINARY_INTEGER DEFAULT EIFIMP_DATA,
193 objlist IN eif_objlist_t DEFAULT NULL,
194 api IN BOOLEAN DEFAULT TRUE);
195 PROCEDURE eif_blob_in(schema IN VARCHAR2, name IN VARCHAR2, implob IN BLOB,
196 datadfns IN BINARY_INTEGER DEFAULT EIFIMP_DATA,
197 objlist IN eif_objlist_t DEFAULT NULL,
198 api IN BOOLEAN DEFAULT TRUE);
199 PROCEDURE eif_out(name IN VARCHAR2, expeif OUT eif_t,
200 objlist IN eif_objlist_t DEFAULT NULL,
201 dfns IN BOOLEAN DEFAULT FALSE,
202 api IN BOOLEAN DEFAULT TRUE);
203 PROCEDURE eif_out(schema IN VARCHAR2, name IN VARCHAR2, expeif OUT eif_t,
204 objlist IN eif_objlist_t DEFAULT NULL,
205 dfns IN BOOLEAN DEFAULT FALSE,
206 api IN BOOLEAN DEFAULT TRUE);
207 PROCEDURE eif_in(name IN VARCHAR2, impeif IN eif_t,
208 datadfns IN BINARY_INTEGER DEFAULT EIFIMP_DATA,
209 objlist IN eif_objlist_t DEFAULT NULL,
210 api IN BOOLEAN DEFAULT TRUE);
211 PROCEDURE eif_in(schema IN VARCHAR2, name IN VARCHAR2, impeif IN eif_t,
212 datadfns IN BINARY_INTEGER DEFAULT EIFIMP_DATA,
213 objlist IN eif_objlist_t DEFAULT NULL,
214 api IN BOOLEAN DEFAULT TRUE);
215 PROCEDURE eif_delete(eif IN OUT eif_t);
216 FUNCTION get_obj_protect RETURN BOOLEAN;
217
218 bad_compat_error NUMBER := -20002;
219 aw_changed_error NUMBER := -20003;
220 awname_null_error NUMBER := -20004;
221 has_schema_error NUMBER := -20005;
222 bad_snowflake_error NUMBER := -20006;
223
224 PROCEDURE convert(awname IN VARCHAR2);
225 PROCEDURE convert(oldname IN VARCHAR2, newname IN VARCHAR2,
226 newtablespace IN VARCHAR2 DEFAULT NULL);
227
228 en_tbs_error NUMBER := -20001;
229 PROCEDURE move_awmeta(dest_tbs IN VARCHAR2);
230
231 FUNCTION prop_val(rid IN ROWID) RETURN VARCHAR2;
232 FUNCTION olap_type(otype IN NUMBER) RETURN VARCHAR2;
233 FUNCTION prop_clob(rid IN ROWID) RETURN CLOB;
234 FUNCTION prop_len(rid IN ROWID) RETURN NUMBER;
235 PROCEDURE gather_stats;
236 FUNCTION in_aw_cleanup RETURN BOOLEAN;
237 PROCEDURE VALIDATE_AW_NAME(awname IN VARCHAR2);
238
239 -- Internal types, not for user consumption
240 TYPE loblineiter_t IS RECORD (
241 mylob CLOB,
242 loc NUMBER,
243 clength NUMBER,
244 cmax NUMBER,
245 linemax NUMBER);
246
247 END dbms_aw;