【问题标题】:Return Statement in XqueryXquery 中的返回语句
【发布时间】:2011-10-10 18:40:16
【问题描述】:

我想在我的 XQuery 中更改我当前的 return 语句,即:

return
 <p>XML File Stored Successfully</p>

我想让这个return语句能够处理有错误的情况,然后返回一个错误代码给用户,如果没有错误,然后将上面的消息返回给用户。

为了我的目的,我认为应该将 if-else 构造置于 return 之下。但是我真的不知道if应该有什么条件,请高手帮忙吗?提前致谢。

【问题讨论】:

  • 嗯,条件应该是有没有错误。您是否在某处设置了一个变量来指示是否发生错误?您甚至希望捕获什么样的错误?
  • @Chris,我正在尽力考虑使用这样的变量,但线索不多。
  • 那么您的 XQuery 的其余部分在做什么,在仍然允许返回语句处理的同时可能会发生错误?

标签: xml xquery


【解决方案1】:

XQuery 3.0 工作草案引入了 try-catch 表达式,这可能是您正在寻找的:

declare namespace err = "http://www.w3.org/2005/xqt-errors";

let $x := "string"
return
  try {
    $x cast as xs:integer
  } catch * {
    $err:code (: this variable contains the error code :)
  }

【讨论】:

  • 好答案!此代码适用于try.zorba-xquery.com ...请添加支持此功能的其他处理器。我猜也是 MXQuery?
猜你喜欢
  • 2015-07-28
  • 2016-05-03
  • 1970-01-01
  • 2015-11-21
  • 1970-01-01
  • 1970-01-01
  • 2023-02-22
  • 2013-04-05
  • 2017-05-15
相关资源
最近更新 更多