目前,我正在开发一个对给定的 MarkLogic 数据库进行查询的应用程序,我们可以说是默认数据库,但要在屏幕上提供相同的值,我必须在显示之前检查登录用户的角色。这可以查询 Security 数据库(由 MarkLogic 本身提供的数据库)来完成,但我不知道如何在查询中显式声明我要查询该特定数据库而不是默认数据库。你知道一些可以帮助我的命令吗?谢谢!
您可以使用 eval 对另一个数据库进行查询:
xdmp:eval("doc('/docs/mydoc.xml')", (),
<options xmlns="xdmp:eval">
<database>{xdmp:database("otherdb")}</database>
</options>)
请参阅:https://docs.marklogic.com/xdmp:eval
此外,如果您要专门查询安全数据库,则可以使用xdmp:security-database
代替xdmp:database
。