我有使用 MSSQL 2008 的经验,最近不得不从 MSSQL 迁移到 Oracle 10g。设计(Oracle)表的人,它有一个我需要从中提取数据的列,他们使用一个BLOB
类型列来存储他们需要存储的 XML。
在 MSSQL 中,您只需将 XML 字符串存储在一个XML
类型中或使用VARCHAR(MAX)
. 假设一个表的myTable
列称为myColumn
包含如果您想将类型转换为类型,您只需编写如下内容:VARCHAR(MAX)
<ROOT><a>111</a></ROOT>
VARCHAR(MAX)
XML
SELECT CONVERT(XML, myColumn) FROM myTable
如果需要,您可以使用 XQuery 从转换后的列中获取数据,如下所示:
SELECT CONVERT(XML, myColumn).query('/ROOT/a')
如果 myColumn 是 a ,您将如何在 Oracle 10g 中完成同样的事情BLOB
,而无需编写存储过程但仍使其可重用?BLOB 中的文本是UFT-8
.
我非常感谢您的帮助,因为我有点急需这个。