Xquery if/else 动态命名空间
declare function tns:getDt($inp as xs:string) as element(ns1:Sschema)*{
let $primary := fn-bea:get-property('PRIMARY','1')
let $sec := fn-bea:get-property('SECONDARY','2')
if ($primary = "1") then (
for $response in tns:getData1()
return
$response
) else (
for $response in tns2:getData1()
return
$response
)
}
我想根据 weblogic 管理属性调用不同命名空间中的函数。有几个问题:
- 我如何根据 weblogic 管理属性动态选择要使用的命名空间?
- 在上面的代码中,Oracle 研讨会抱怨了 if/else。 if/else 只能在 FLWOR 内部吗?
declare function tns:getDt($inp as xs:string) as element(ns1:Sschema)*{
let $primary := fn-bea:get-property('PRIMARY','1')
let $sec := fn-bea:get-property('SECONDARY','2')
if ($primary = "1") then (
for $response in tns:getData1()
return
$response
) else (
for $response in tns2:getData1()
return
$response
)
}
I want to call functions in different namespaces based on a weblogic admin property. A couple of questions:
- How can i dynamically chose the namespace to use based on weblogic admin property?
- In the above code, the Oracle workshop complains about the if/else. Can the if/else be only inside the FLWOR?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
关于你的第二个问题:是的,你需要在“if”表达式之前添加一个“return”,以使你的查询在语法上有效。
关于你的第一个问题,我不太确定你的意图是什么?
Regarding your second question: yes, you need to add a "return" before the "if" expression to make your query syntactically valid.
Regarding your first question, I'm not really sure what's your intention?..