【发布时间】:2022-10-04 21:57:56
【问题描述】:
这个问题来自一个关于我在 TDE 和光学计划设置中面临的用例的现有问题: MarkLogic Optic API: Dynamic update support for Template View Configuration
我在表MyTable 和架构MyView 的模板视图配置中有以下字段:
<column>
<name>currentDateTime</name>
<scalar-type>dateTime</scalar-type>
<val>fn:current-dateTime()</val>
<nullable>true</nullable>
<invalid-values>ignore</invalid-values>
</column>
我正在尝试创建一个与此列等效的基于查询的视图,以便在每次针对此视图运行光学计划时动态更新此值,但在使用 MarkLogic 可用的当前文档时遇到问题。
我使用文档中概述的以下查询创建基于查询的视图,并将其作为文档插入到我的 Schemas 数据库中的 XML 输出中:
op:from-view("MyTable", "MyView")
=> op:select(("currentDateTime"))
=> op:generate-view("DataHub", "myQBV")
但是,当我查询这个新视图时,dateTime 时间戳保持静态并且不会动态更新。
这是我的光学查询:
let $QBV := op:from-view("DataHub", "myQBV")
return $QBV
=>op:select((op:view-col("myQBV", "currentDateTime")))
=>op:result()
我必须设置一个额外的步骤来获得currentDateTime 值以在光学计划之后动态更新吗?
我将 QBV XML 保留为具有 data-view-admin 角色的用户。
【问题讨论】:
标签: marklogic