0
我正在使用ORACLE数据库,我需要获取大量记录集(几千行)的BLOB(或另一个LOB格式),我从查询中检索这些记录集。 我需要将输出格式填充为LOB,然后将其作为输入提供给DBMS_CRYPTO.Hash函数,从而生成我需要的散列键。如何转换BLOB中的SQL记录集?
是否可以直接使用解析为JSON类型的查询数据填充LOB?或者您是否建议我使用其他格式以有效的方式填充(B)LOB格式?
感谢
我正在使用ORACLE数据库,我需要获取大量记录集(几千行)的BLOB(或另一个LOB格式),我从查询中检索这些记录集。 我需要将输出格式填充为LOB,然后将其作为输入提供给DBMS_CRYPTO.Hash函数,从而生成我需要的散列键。如何转换BLOB中的SQL记录集?
是否可以直接使用解析为JSON类型的查询数据填充LOB?或者您是否建议我使用其他格式以有效的方式填充(B)LOB格式?
感谢
最直接的答案是,你可以序列化到你的巨大记录到XML
SELECT DBMS_XMLGEN.getxmltype ('select * from EMPLOYEE') FROM DUAL
输出:
SELECT DBMS_XMLGEN.getxmltype( 'SELECT * FROM EMPLOYEE')FROM DUAL
输出:
<ROWSET>
<ROW>
<EMP_ID>1</EMP_ID>
<EMP_NAME>Employee 1</EMP_NAME>
<EMP_DEPT_ID>1</EMP_DEPT_ID>
<EMP_LOC>1</EMP_LOC>
<EMP_SAL>2000</EMP_SAL>
</ROW>
<ROW>
<EMP_ID>2</EMP_ID>
<EMP_NAME>Employee 2</EMP_NAME>
<EMP_DEPT_ID>2</EMP_DEPT_ID>
<EMP_LOC>2</EMP_LOC>
<EMP_SAL>1000</EMP_SAL>
</ROW>
</ROWSET>
后,您可以使用TO_CLOB or_to_blob功能
SELECT TO_CLOB (DBMS_XMLGEN.getxmltype ('select * from EMPLOYEE')) FROM DUAL
输出:(HUGECLOB)