如何解决如何在RPGLE中的“ XMLTABLE”嵌入式SQL语句中跨多行中断长字符串?
我的XML路径超过100个字符(因此在保存源时会被截断)。我的发言是这样的:
Exec sql
Select Whatever
Into :Stuff
From Table as X,XmlTable(
XmlNamespaces('http://namespace.url/' as "namespacevalue"),'$X/really/long/path' Passing X.C1 as "X"
Columns
Field1 Char(3) Path 'example1',Field2 Char(8) Path 'example2',Field3 Char(32) Path '../example3'
) As R;
我必须跨多行中断 $ X / really / long / path 。根据{{3}},
加号(+)可用于指示字符串常量的延续。
但是,这甚至都没有通过预编译(“令牌+无效”)。我怀疑这是由于字符串在语句中的位置所致。
我也尝试过:
我考虑过:
- 准备整个语句,但这出于多种原因并不理想
- 在层次结构中的更高级别截断路径,但这不会返回所需的记录“粒度”
有没有办法在源代码的多行中跨XmlTable函数中的特定文字?感谢您提出的所有想法!
解决方法
类似
Exec SQL
Select Whatever
Into :Stuff
From Table as X,XmlTable(
XmlNamespaces('http://namespace.url/' as "namespacevalue"),'$X/really/+
long/path' Passing X.C1 as "X"
Columns
Field1 Char(3) Path 'example1',Field2 Char(8) Path 'example2',Field3 Char(32) Path '../example3'
) As R;
应该工作,是您尝试的吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。