2015-07-21 97 views
0

我在測試服務器8062編寫一些測試案例查詢,但我的數據駐留在端口號8060與特定內容database.Without使用管理變化的測試服務器的內容數據庫控制檯,是否可以指定哪個端口和內容數據庫命中特定的查詢?另外我不想加載內容數據庫的內容來測試服務器數據庫。 例如例如:指定端口號和內容數據庫中marklogic

let $current := (fn:count(cts:uri-match("*.xml*")),(), 
    <options xmlns="xdmp:eval"> 
    <database>{xdmp:database("prj-content")}</database> 
    </options>) 

回答

4

在MarkLogic中,數據不會「駐留」在端口上。而是連接到數據庫的應用程序服務器在端口上偵聽HTTP或XDBC請求。你可以有很多應用服務器面向同一個數據庫。對於爲數據庫配置的多個應用服務器,測試和管理是兩個很好的用例。

測試服務器(端口8062)應指定prj-content數據庫。它的當前數據庫配置是什麼?爲什麼與prj-content不同。如果你這樣做,你將不必在運行時指定數據庫。

如果您確實需要在運行時指定數據庫,則可以使用xdmp:evalxdmp:invokexdmp:invoke-function

+0

謝謝賈斯汀。 xdmp:eval解決了我的問題。 – kol

+0

但是,我會告誡你,eval通常是最後的手段。在運行時切換數據庫不是大多數應用程序的典型操作。你還沒有確切地說明你想要完成什麼,但我會考慮重新考慮一個不需要eval的設計。 –

相關問題