计算视图:hextoraw('41 42')导致错误:"错误:SAP DBTech JDBC:[264]:"

2020-09-13 17:26发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我在HA...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我在HANA 1.00.122.12.1502962396(fa/hana1sp12)上,我有一个计算视图,该视图由SYS.DUMMY上的投影以及带有此(列引擎)表达式的计算列组成:

 hextoraw('4142')

当我查询计算视图时,这很好。 当我使用此表达式添加另一个计算列时:

 hextoraw('41 42')

(因此,相同的两个字节,但中间有一个空格),查询视图时出现此错误:

"错误:SAP DBTech JDBC:[264]:无效的数据类型:该值在函数hextobin()处的函数hextobin()处具有无效的十六进制格式" 

我想了解问题所在。
在hextoraw的文档中(https://help.sap.com/viewer/fc5ace7a367c434190a8047881f92ed8/2.0.03/en-US/f5a9ca3718354a499a98ba61ae3da170.html ),其内容为:

"将字节的十六进制表示形式转换为字节字符串。十六进制字符串可以包含0-9,大写或小写af,并且字节的两位数字之间不能有空格;字节之间可以有空格。"

我认为在" 41 42"中,空间确实在两个字节(41和42)之间,这是怎么回事?

先谢谢您,并致以最诚挚的问候,

罗兰。

4条回答
N-Moskvin
2020-09-13 18:05

嗨,

当我们将十六进制字节转换为字符串字符时; 我们将20作为最小的十六进制字节,可以将其转换为字符串字符,即空格。

因此09不能是可以转换为字符串字符的正确十六进制字节。 因此,十六进制字节必须在21到FF之间,作为hextoraw的参数。

希望我能解释一下:)

一周热门 更多>

相关问答