0

使用 LN 8.5.3 FP3,我正在以编程方式构造一个查询以传递给 LotusScript 中的FTSearch(Qry$, 0 )函数。谁能告诉我在无法执行查询之前字符串的最大长度是多少?

该代码由 Notes 8.5.3 FP3 服务器上的计划代理运行,并且 htto url 大小不适用于这种情况。

期待您的反馈和经验..

莱昂

4

3 回答 3

3

据我所知,1 个字段/值的限制最多为 128 个字符,但是正如 Michael 注意到的(在下面的评论中),可能有很多字段,总大小很可能高达 16Kb。

你很容易自己做测试:

Dim session As New NotesSession
Dim db As NotesDatabase
Dim col As NotesDocumentCollection
Dim Query As String
Dim i As integer

Set db = session.Currentdatabase

For i = 1 To 32000
    Print i
    Query = Query & "1"
    Set col = db.Ftsearch({"} & Query & {"}, 0)
Next
于 2013-10-24T11:27:16.097 回答
1

我假设您的查询比仅搜索单个字符串更复杂,读取它可能包含多个查询参数,例如 [Form]="Memo" & [Subject]="Test" 等等。虽然单个搜索字符串(即“测试”)可能被限制为 128 个字符,但整个查询远不限于 128 个字符。我们创建并使用了比这更长的动态查询。我见过超过 1024 字节的查询,而且这些都在工作。我的猜测是整个查询的限制约为 16kB。

于 2013-11-18T14:13:24.987 回答
1

在 Lotusscript 中,您可以使用文档集合并通过顺序较小的 FTSearch 来缩小范围。这样,您就可以防止查询过大的风险。

于 2013-10-25T06:58:48.897 回答