hi tom ,
i am trying to create a table based on a view.
the view is based on xml document.
here is the view description.
CREATE OR REPLACE VIEW VW_MEPOutputData
AS
SELECT
FileID FileID
, SUBSTR(extractvalue(value(MeasPoint), '/MeasPoint/Name'), 1, 255) ||'('||
SUBSTR(extractvalue(value(MeasPoint), '/MeasPoint/@id'), 1, 255) ||')' LoadPoints
, SUBSTR(extractvalue(value(MeasPointStep), '/MeasPointStep/@id'), 1, 255) LoadPointSteps
, SUBSTR(extractvalue(value(SetVar), '/SetVar/ViewName'), 1, 255) SetVariable
, SUBSTR(extractvalue(value(VSV), '/VarSetValue/@Step'), 1, 10) SetStep
, SUBSTR(extractvalue(value(VSV), '/VarSetValue/VarSet/SetValue'), 1, 10) SetValue
, SUBSTR(extractvalue(value(SetVar), '/SetVar/SetState'), 1, 10) SetState
, SUBSTR(extractvalue(value(SetVar), '/SetVar/VarDevice'), 1, 255) SetVarDevice
, SUBSTR(extractvalue(value(VSV), '/VarSetValue/VarSet/SetTime'), 1, 10) SetTime
, SUBSTR(extractvalue(value(MeasVar), '/MeasVar/ViewName'), 1, 255) MeasVariable
, SUBSTR(extractvalue(value(VMV), '/VarMeasValue/@Step'), 1, 10) MeasStep
, SUBSTR(extractvalue(value(VMV), '/VarMeasValue/VarMeas/MeasValue'), 1, 10) MeasValue
, SUBSTR(extractvalue(value(MeasVar), '/MeasVar/MeasState'), 1, 10) MeasState
, SUBSTR(extractvalue(value(MeasVar), '/MeasVar/MeasState'), 1, 255) MeasVarDevice
, SUBSTR(extractvalue(value(VMV), '/VarMeasValue/VarMeas/MeasTime'), 1, 10) MeasTime
FROM TabL_FileContent f
, table(xmlsequence(extract(f.ResultData, '/MEPOutput/MEPOutputData/Sequences/Sequence'))) Sequence
, table(xmlsequence(extract(value(Sequence), '/Sequence/MeasPoint'))) MeasPoint
, table(xmlsequence(extract(value(MeasPoint),'/MeasPoint/MeasPointSteps'))) MeasPointSteps
, table(xmlsequence(extract(value(MeasPointSteps),'/MeasPointSteps/MeasPointStep'))) MeasPointStep
, table(xmlsequence(extract(value(MeasPointStep), '/MeasPointStep/SetPhase/SetVar'))) SetVar
, table(xmlsequence(extract(value(SetVar), '/SetVar/VarSetValues/VarSetValue'))) VSV
, table(xmlsequence(extract(value(MeasPointStep),'/MeasPointStep/MeasPhase/MeasVar'))) MeasVar
, table(xmlsequence(extract(value(MeasVar), '/MeasVar/VarMeasValues/VarMeasValue'))) VMV
/
when i try to create the table i get such an error.
SQL> create table test_u as select * from vw_mepoutputdata where 1=2;
create table test_u as select * from vw_mepoutputdata where 1=2
*
ERROR at line 1:
ORA-04030: out of process memory when trying to allocate 44 bytes
(callheap,temporary memory)
i increased the shared pool size and still get the error.
Total System Global Area 1074865868 bytes
Fixed Size 456396 bytes
Variable Size 1048576000 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
SQL> select value
2 from v$parameter
3 where name like 'shared_pool_size';
VALUE
---------------------------------------------
738197504
can you please help me. i have used substr becuase other wise it takes a default of varchar2(4000) for each column.