从人员示例派生的 TDE 模板失败



我正在使用 MarkLogic 9 并按照有关 SQL 数据建模指南的教程进行操作 ( https://docs.marklogic.com/guide/sql/intro ( 满足所有先决条件:

  1. 在 Cent Os 上安装 MarkLogic 9 (完成没有错误(
  2. 创建林(完成且没有错误(
  3. 创建数据库(完成且没有错误(
  4. 插入数据(完成时没有错误(

直到我到达创建一个模板视图(https://docs.marklogic.com/guide/sql/setup#id_14127(当我在查询控制台中执行语句时,出现以下错误:

[1.0-ml] SVC-FILOPN: File open error: open '/MarkLogic/tde.xqy': No 
such file or directory
Stack Trace
At line 2 column 0:
In xdmp:eval("xquery version &quot;1.0-ml&quot;; &#10;import module namespace ...", (), <options xmlns="xdmp:eval"><database>18182129315596444747</database>...</options>)
1. xquery version "1.0-ml"; 
2. import module namespace tde = "http://marklogic.com/xdmp/tde" 
3. at "/MarkLogic/tde.xqy";
MarkLogic

的文件放在文件夹./opt/MarkLogic中,目录有

erik@marklogic-vm /opt/MarkLogic $ ls -l
total 460
drwxr-xr-x  5 root root  53248 Apr 14 19:40 Admin
drwxr-xr-x 15 root root   4096 Apr 14 19:40 Apps
drwxr-xr-x  4 root root   4096 Apr 14 19:40 Assets
drwxr-xr-x  2 root root   4096 Apr 14 19:40 bin
drwxr-xr-x  3 root root  20480 Apr 14 19:40 Config
drwxr-xr-x  5 root root   4096 Apr 14 19:40 Converters
drwxr-xr-x  2 root root   4096 Apr 14 19:40 Docs
drwxr-xr-x  3 root root   4096 Apr 14 19:40 FlexRep
-rw-r--r--  1 root root  35147 Apr 11 09:08 GPL.txt
drwxr-xr-x  2 root root   4096 Apr 14 19:40 HealthCheck
drwxr-xr-x  2 root root   4096 Apr 14 19:40 include
drwxr-xr-x 12 root root   4096 Apr 14 19:40 Installer
drwxr-xr-x  3 root root   4096 Apr 14 19:40 java
drwxr-xr-x  2 root root  12288 Apr 14 19:40 Lang
-rw-r--r--  1 root root 250564 Apr 11 09:08 LEGALNOTICES.txt
-rw-r--r--  1 root root  18416 Apr 11 09:08 LGPL21.txt
-rw-r--r--  1 root root   7639 Apr 11 09:08 LGPL30.txt
drwxr-xr-x  2 root root   4096 Apr 14 19:40 lib
drwxr-xr-x  2 root root   4096 Apr 14 19:40 Messages
drwxr-xr-x  7 root root   4096 Apr 14 19:40 mlcmd
drwxr-xr-x  3 root root   4096 Apr 14 19:40 Modules
drwxr-xr-x  2 root root   4096 Apr 11 09:58 Plugins
drwxr-xr-x  8 root root   4096 Apr 14 19:40 Samples

你知道出了什么问题吗?

曼尼谢谢

埃里克

Erik - 在查询控制台中使用tde:template-insert()函数时,请确保选择了"内容"数据库(在本例中为SQLData(,而不是SQLSchema数据库。对 SQLData 数据库执行 template-insert() 函数会将模板插入到 SQLSchema 数据库中。

另外,请确保您的 SQLData 数据库具有与之关联的 SQLSchema 数据库。

在MarkLogic

,我们最近也刚刚发布了一个4小时的自定进度课程,内容涉及所有新的MarkLogic 9功能,包括TDE。请看一下它 - http://www.marklogic.com/training-courses/whats-new-marklogic-9/- 它肯定会帮助您快速了解数据库的最新添加。(您也可以在课程结束时进行评估(。

感谢您的所有帮助和反应。似乎我以前有过 MarkLogic 版本,但 TDE 尚不受支持。我完全删除了 ML 并安装了 ML 9.0 XX

  1. 创建一个数据库 SQLData 和一个林林 SQL-Data
  2. 在启用时设置属性三重索引
  3. 创建一个数据库 SQLSchema 和一个林 SQLSchema
  4. 在 SQLData 数据库的查询控制台中,运行以下查询以创建视图:
xquery version "1.0-ml"; 
import module namespace tde = "http://marklogic.com/xdmp/tde" 
       at "/MarkLogic/tde.xqy";
let $employees :=
<template xmlns="http://marklogic.com/xdmp/tde">
  <context>/Employee</context>
  <rows>
    <row>
      <schema-name>main</schema-name>
      <view-name>employees</view-name>
      <columns>
        <column>
          <name>EmployeeID</name>
          <scalar-type>int</scalar-type>
          <val>ID</val>
        </column>
        <column>
          <name>FirstName</name>
          <scalar-type>string</scalar-type>
          <val>FirstName</val>
        </column>
        <column>
          <name>LastName</name>
          <scalar-type>string</scalar-type>
          <val>LastName</val>
        </column>
        <column>
          <name>Position</name>
          <scalar-type>string</scalar-type>
          <val>Position</val>
        </column>
       </columns>
    </row>
  </rows>
</template>
return tde:template-insert("/employees.xml", $employees)

如果在 SQLSchema 数据库中运行此操作,则它不起作用。

最新更新