farzanj
asked on
Oracle syntax sqlplus
Here is some code. Extracting elements works fine. But no clue about extracting attributes.
insert into adam_test
select extractvalue(value(s), '/carrierevents/HandheldRe gistration ', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') HandheldRegistration,
extractvalue(value(s), '/carrierevents/DefaultReg istration' , 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') DefaultRegistration,
extractvalue(value(s), '/carrierevents/NonDefault Registrati on', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') NonDefaultRegistration,
extractvalue(value(s), '/carrierevents/HandheldDe activatedR egistratio n', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') HandheldDeactivatedReg,
extractvalue(value(s), '/carrierevents/ActiveSusp end', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') ActiveSuspend,
extractvalue(value(s), '/carrierevents/ActiveDeac tivate', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') ActiveDeactivate,
extractvalue(value(s), '/carrierevents/ActiveResu me', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') ActiveResume,
extractvalue(value(s), '/carrierevents/DefaultRes ume', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') DefaultResume,
extractvalue(value(s), '/carrierevents/ActiveActi vate', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') ActiveActivate,
extractvalue(value(s), '/carrierevents/SimSwap', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') SimSwap,
extractvalue(value(s), '/carrierevents/PinSwap', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') PinSwap,
extractvalue(value(s), '/carrierevents/ActiveModi fy', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') ActiveModify,
extractvalue(value(s), '/carrierevents/Deactivate ToModify', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') DeactivateToModify,
extractvalue(value(s), '/carrierevents/DefaultMod ify', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') DefaultModify,
extractvalue(value(s), '/carrierevents/NonDefault Modify', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') NonDefaultModify,
extractvalue(value(s), '/carrierevents/WebSLActiv ate', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') WebSLActivate,
extractvalue(value(s), '/carrierevents/CaribouDev ices', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') CaribouDevices,
extractvalue(value(s), '/carrierevents/CaribouLat est', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') CaribouLatest,
extractvalue(value(s), '/carrierevents/REGG', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') REGG,
extractvalue(value(s), '/carrierevents/REGC', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') REGC,
extractvalue(value(s), '/carrierevents/REGI', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') REGI,
extractvalue(value(s), '/carrierevents/REGW', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') REGW,
extractvalue(value(s), '/carrierevents/CreateBBID ', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') CreateBBID,
extractvalue(value(s), '/carrierevents/LookUpBBID ', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') LookUpBBID,
extractvalue(value(s), '/carrierevents/DeleteBBID ', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') DeleteBBID,
extractvalue(value(s), '/carrierevents/ChangeBBID ', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') ChangeBBID,
extractvalue(value(s), '/carrierevents/BBIDSBP', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') BBIDSBP,
extractvalue(value(s), '/carrierevents/BISNoteUpd ate', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') BISNoteUpdate,
extractvalue(value(s), '/carrierevents/BISNoteMul tiByte', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') BISNoteMultiByte,
extractvalue(value(s), '/carrierevents/ARI', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') ARI,
extractvalue(value(s), '/carrierevents/BBIDLogin' , 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') BBIDLogin,
extractvalue(value(s), '/carrierevents/WebLogin', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') WebLogin,
extractvalue(value(s), '/carrierevents/WebSBP', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') WebSBP,
extractvalue(value(s), '/carrierevents/WebDeviceL ookUp', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') WebDeviceLookUp,
extractvalue(value(s), '/carrierevents/WebAccount LookUp', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') WebAccountLookUp,
extractvalue(value(s), '/carrierevents/WebDevDefS ervsAssign ment', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') WebDevDefServsAssignment,
extractvalue(value(s), '/carrierevents/WebService LookUp', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') WebServiceLookUp
from table(xmlsequence(extract( (select xml_data from test_table), '/kraken/profile/intervalr esults/car rierevents ', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"'))) s;
This works fine for extracting elements, but, I also need to extract attributes.
Would you know an effective oracle syntax for extracting the attributes? Or is it easier to convert the attributes into elements prior to inserting into oracle so I can extract with the above syntax?
insert into adam_test
select extractvalue(value(s), '/carrierevents/HandheldRe
extractvalue(value(s), '/carrierevents/DefaultReg
extractvalue(value(s), '/carrierevents/NonDefault
extractvalue(value(s), '/carrierevents/HandheldDe
extractvalue(value(s), '/carrierevents/ActiveSusp
extractvalue(value(s), '/carrierevents/ActiveDeac
extractvalue(value(s), '/carrierevents/ActiveResu
extractvalue(value(s), '/carrierevents/DefaultRes
extractvalue(value(s), '/carrierevents/ActiveActi
extractvalue(value(s), '/carrierevents/SimSwap', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') SimSwap,
extractvalue(value(s), '/carrierevents/PinSwap', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') PinSwap,
extractvalue(value(s), '/carrierevents/ActiveModi
extractvalue(value(s), '/carrierevents/Deactivate
extractvalue(value(s), '/carrierevents/DefaultMod
extractvalue(value(s), '/carrierevents/NonDefault
extractvalue(value(s), '/carrierevents/WebSLActiv
extractvalue(value(s), '/carrierevents/CaribouDev
extractvalue(value(s), '/carrierevents/CaribouLat
extractvalue(value(s), '/carrierevents/REGG', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') REGG,
extractvalue(value(s), '/carrierevents/REGC', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') REGC,
extractvalue(value(s), '/carrierevents/REGI', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') REGI,
extractvalue(value(s), '/carrierevents/REGW', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') REGW,
extractvalue(value(s), '/carrierevents/CreateBBID
extractvalue(value(s), '/carrierevents/LookUpBBID
extractvalue(value(s), '/carrierevents/DeleteBBID
extractvalue(value(s), '/carrierevents/ChangeBBID
extractvalue(value(s), '/carrierevents/BBIDSBP', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') BBIDSBP,
extractvalue(value(s), '/carrierevents/BISNoteUpd
extractvalue(value(s), '/carrierevents/BISNoteMul
extractvalue(value(s), '/carrierevents/ARI', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') ARI,
extractvalue(value(s), '/carrierevents/BBIDLogin'
extractvalue(value(s), '/carrierevents/WebLogin',
extractvalue(value(s), '/carrierevents/WebSBP', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') WebSBP,
extractvalue(value(s), '/carrierevents/WebDeviceL
extractvalue(value(s), '/carrierevents/WebAccount
extractvalue(value(s), '/carrierevents/WebDevDefS
extractvalue(value(s), '/carrierevents/WebService
from table(xmlsequence(extract(
This works fine for extracting elements, but, I also need to extract attributes.
Would you know an effective oracle syntax for extracting the attributes? Or is it easier to convert the attributes into elements prior to inserting into oracle so I can extract with the above syntax?
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Thanks but that doesn't show me the raw data with the attributes and what attributes you need selected.
ASKER
Thank you very much. I tried and it helped. Thanks for a great help.
ASKER
1. In the database create the KRAKEN directory.
SQL> create directory kraken as '/files/KRAKEN';
2. Create a table with an xmltype column
SQL> create table test_table (xml_data xmltype not null);
3. Insert the XML document into the table with the xmltype column
SQL>insert into TEST_TABLE values (XMLTYPE(BFILENAME ('KRAKEN','load-profile-24
4. Create a table which contains a column for each element to be parsed
create table adam_test(
HandheldRegistration varchar2(50),
DefaultRegistration varchar2(50),
NonDefaultRegistration varchar2(50),
HandheldDeactivatedReg varchar2(50),
ActiveSuspend varchar2(50),
ActiveDeactivate varchar2(50),
ActiveResume varchar2(50),
DefaultResume varchar2(50),
ActiveActivate varchar2(50),
SimSwap varchar2(50),
PinSwap varchar2(50),
ActiveModify varchar2(50),
DeactivateToModify varchar2(50),
DefaultModify varchar2(50),
NonDefaultModify varchar2(50),
WebSLActivate varchar2(50),
CaribouDevices varchar2(50),
CaribouLatest varchar2(50),
REGG varchar2(50),
REGC varchar2(50),
REGI varchar2(50),
REGW varchar2(50),
CreateBBID varchar2(50),
LookUpBBID varchar2(50),
DeleteBBID varchar2(50),
ChangeBBID varchar2(50),
BBIDSBP varchar2(50),
BISNoteUpdate varchar2(50),
BISNoteMultiByte varchar2(50),
ARI varchar2(50),
BBIDLogin varchar2(50),
WebLogin varchar2(50),
WebSBP varchar2(50),
WebDeviceLookUp varchar2(50),
WebAccountLookUp varchar2(50),
WebDevDefServsAssignment varchar2(50),
WebServiceLookUp varchar2(50)
);
5. Query the xmltype column and extract the elements into the table
insert into adam_test
select extractvalue(value(s), '/carrierevents/HandheldRe
extractvalue(value(s), '/carrierevents/DefaultReg
extractvalue(value(s), '/carrierevents/NonDefault
extractvalue(value(s), '/carrierevents/HandheldDe
extractvalue(value(s), '/carrierevents/ActiveSusp
extractvalue(value(s), '/carrierevents/ActiveDeac
extractvalue(value(s), '/carrierevents/ActiveResu
extractvalue(value(s), '/carrierevents/DefaultRes
extractvalue(value(s), '/carrierevents/ActiveActi
extractvalue(value(s), '/carrierevents/SimSwap', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') SimSwap,
extractvalue(value(s), '/carrierevents/PinSwap', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') PinSwap,
extractvalue(value(s), '/carrierevents/ActiveModi
extractvalue(value(s), '/carrierevents/Deactivate
extractvalue(value(s), '/carrierevents/DefaultMod
extractvalue(value(s), '/carrierevents/NonDefault
extractvalue(value(s), '/carrierevents/WebSLActiv
extractvalue(value(s), '/carrierevents/CaribouDev
extractvalue(value(s), '/carrierevents/CaribouLat
extractvalue(value(s), '/carrierevents/REGG', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') REGG,
extractvalue(value(s), '/carrierevents/REGC', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') REGC,
extractvalue(value(s), '/carrierevents/REGI', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') REGI,
extractvalue(value(s), '/carrierevents/REGW', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') REGW,
extractvalue(value(s), '/carrierevents/CreateBBID
extractvalue(value(s), '/carrierevents/LookUpBBID
extractvalue(value(s), '/carrierevents/DeleteBBID
extractvalue(value(s), '/carrierevents/ChangeBBID
extractvalue(value(s), '/carrierevents/BBIDSBP', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') BBIDSBP,
extractvalue(value(s), '/carrierevents/BISNoteUpd
extractvalue(value(s), '/carrierevents/BISNoteMul
extractvalue(value(s), '/carrierevents/ARI', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') ARI,
extractvalue(value(s), '/carrierevents/BBIDLogin'
extractvalue(value(s), '/carrierevents/WebLogin',
extractvalue(value(s), '/carrierevents/WebSBP', 'xmlns="http://www.kraken.prv.com/profiler/jaxb"') WebSBP,
extractvalue(value(s), '/carrierevents/WebDeviceL
extractvalue(value(s), '/carrierevents/WebAccount
extractvalue(value(s), '/carrierevents/WebDevDefS
extractvalue(value(s), '/carrierevents/WebService
from table(xmlsequence(extract(