“文本字段中不支持关系运算符”

时间:2013-02-27 20:28:20

标签: lotus-notes lotus

我收到错误:当我在做db.FTSearch时,“文本字段中不支持关系运算符”(FIELD examplefield> = 02/25/2013)。这里的字段名称是“examplefield”&字段类型是日期时间

任何人都可以帮忙解决这个问题吗?

2 个答案:

答案 0 :(得分:1)

如Simon所链接的问题所述,数据库中的UNK表将确定进行全文搜索时用于字段的数据类型。您在任何特定表单上为该字段设置的数据类型无关紧要 - UNK表中的字段由文档上的实际数据定义,并且不会自动重新计算自身。因此,您首先要确保其中存在的每个文档中的“examplefield”具有日期时间的数据类型。但是,您还需要重新构建UNK表。我知道有两种方法可以做到这一点:

  1. 删除数据库上的全文索引,压缩数据库,然后重新创建索引。
  2. 创建数据库的新副本,并用副本替换现有数据库。
  3. 此外,您可以使用免费软件NotesPeek工具检查UNK表中字段的数据类型 - 您可以从此处下载: http://www-01.ibm.com/support/docview.wss?uid=swg24005686

答案 1 :(得分:0)

一般情况下,我不会使用FTSearch。我将创建一个隐藏视图,其中第一列按examplefield排序为格式为yyyy-mm-dd的文本。然后,你可以使用它:

set o_doc = o_hidden_view.GetDocumentByKey("2013-03-25") 
while not o_doc is nothing
    'Do something

    set o_doc = o_view.GetnextDocument(o_doc)
Wend

在我看来,它有更好的时间响应,代价是将负载放在服务器中。与往常一样,它取决于您要处理的数据类型。