0

我想对存储在 Marklogic Server 中的 xml 文档进行 CRUD 操作。谁能告诉我如何在 Marklogic Server 中执行 CRUD 操作?

4

3 回答 3

1

你是如何连接到 MarkLogic 数据库的?这可能会对您进行 CRUD 的方式产生很大影响。

如果您使用 HTTP 服务推送数据,您可以使用现有的 REST 端点,例如Corona 项目或使用 XQuery 制作您自己的端点。

如果您使用 Java 或 .Net,您可以通过 XCC 库进行连接,该库具有 CRUD 功能,而无需编写 XQuery。

在纯 XQuery 中,在 MarkLogic 网站上的 MarkLogic XQuery 函数文档中阅读以下命令可能很有用:

  • xdmp:document-insert()
    • 这将执行 CRUD 的创建和更新
  • fn:doc-available()
    • 如果要测试以查看文档是否存在。一些做 CRUD 的人希望这样做是为了使 Create 和 Update 不同。别人不管。
  • xdmp:document-delete()
    • CRUD 中的删除
  • fn:doc()
    • 读入 CRUD
于 2012-06-12T02:14:52.247 回答
0

另请参阅http://community.marklogic.com/try/corona/index以获得更高级别的 API。

于 2012-06-11T13:48:23.343 回答
0

存储文档后,您可以使用 等函数xdmp:node-replace()xdmp:node-insert-child()节点操作文档。或者,您可以通过 将新版本保存到同一 URI 来更改文档xdmp:document-insert(),或者通过 删除文档xdmp:document-delete()

请注意,MarkLogic 中的事务语义是真正的功能性,因此文档在事务执行期间永远不会更改。您需要完成事务并从数据库中获取文档以查看更改。

于 2012-06-11T12:48:19.233 回答