2016-12-30 80 views
1

它应该是越简单如何将字符串转换为ESQL中的BLOB?

SET OutputRoot.BLOB.BLOB = CAST(MYSTRING AS BLOB); 

但是,当我这样做,IIB抛出

试图以字符串'ABC'转换为错误字节的字符串,但字符串的格式不正确。必须有偶数个十六进制数字(0-9,a-f,A-F)。

回答

1

在我的情况下,我需要将其更改为AS BLOB CCSID 1208 我需要了解CCSID现在的含义。

1

当你想通了,在CAST功能的你需要在这里的语法是

CAST(<source_expression> AS <DataType> CCSID <expression>) 

所以在你的代码是

CAST(MYSTRING AS BLOB CCSID 1208) 

的CCSID参数仅用于用于转换为字符串数据类型或从字符串数据类型转换。使用CCSID参数指定源或目标字符串的代码页。 [Source]

所以与编码字符集标识符(CCSID)定义的code page。例如是针对UTF-8的CCSID与IBM PUA。您可以看到IBM CCSID列表here

如果您想更详细地获取有关此主题的信息,可以查看Version 9.0.0Version 10.0.0的IIB文档。