我想对存储在 Marklogic Server 中的 xml 文档进行 CRUD 操作。谁能告诉我如何在 Marklogic Server 中执行 CRUD 操作?
问问题
479 次
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 回答