【发布时间】:2020-11-19 20:49:09
【问题描述】:
我正在选择的表中有一个 BLOB 字段。此字段数据仅包含 JSON 数据。
如果我执行以下操作:
Select CAST(JSONBLOB as VARCHAR(2000)) from MyTable
--> 这将返回 VARCHAR FOR BIT DATA 格式的值。
我只希望它是标准字符串或 varcher - 不是位格式。
那是因为我需要使用 JSON2BSON 函数将 JSON 转换为 BSON。 JSON2BSON 接受字符串,但不接受 BIT DATA 类型的 VarChar...
这个对话应该很容易。
我可以将选择作为 VARCHAR FOR BIT DATA.. 使用 UI 手动复制它。将其粘贴到选择文字中并将其转换为 BSON。我需要将这个 BLOB 中的一堆数据从 JSON 迁移到 BSON,并且手动执行不会很快。我只是想解释一下这应该是多么简单的用例。
什么是选择命令基本上让它工作:
Select JSON2BSON(CAST(JSONBLOB as VARCHAR(2000))) from MyTable
--> 目前这失败了,因为 CAST 将这个(即使它只有文本字符)转换为 BIT DATA 类型的 VARCHAR,而不是标准 VARCHAR。
有什么建议可以解决这个问题?
Windows 上的 DB2 11。
【问题讨论】: