XMLType
har två metoder:getStringVal()
och getClobVal()
som kommer att konvertera XML-strukturen till deras strängrepresentationer (som en VARCHAR2
och CLOB
respektive). Om du inte vet att din XML-utdata alltid kommer att vara mindre än 4000 tecken (byte) så kommer du förmodligen att vilja använda getClobVal()
så här:
PROCEDURE SEARCH_XML
(
P_ID_TRANSACTION IN TRANSACTION.ID_TRANSACTION%TYPE,
P_CURSOR OUT T_CURSOR
)
IS
BEGIN
OPEN P_CURSOR FOR
SELECT T.XML_IN.getClobVal() AS XML_IN,
T.XML_OUT.getClobVal() AS XML_OUT
FROM TRANSACTION T
WHERE T.ID_TRANSACTION = P_ID_TRANSACTION;
END SEARCH_XML;