我正在使用 MarkLogic 9 并按照有关 SQL 数据建模指南的教程进行操作 ( https://docs.marklogic.com/guide/sql/intro ( 满足所有先决条件:
- 在 Cent Os 上安装 MarkLogic 9 (完成没有错误(
- 创建林(完成且没有错误(
- 创建数据库(完成且没有错误(
- 插入数据(完成时没有错误(
直到我到达创建一个模板视图(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 "1.0-ml"; 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
- 创建一个数据库 SQLData 和一个林林 SQL-Data
- 在启用时设置属性三重索引
- 创建一个数据库 SQLSchema 和一个林 SQLSchema
- 在 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 数据库中运行此操作,则它不起作用。