我在执行 db.FTSearch(FIELD 示例字段 >= 2013 年 2 月 25 日)时收到错误消息:“文本字段中不支持关系运算符”。这里的字段名称是“examplefield”,字段类型是日期时间
任何人都可以帮助解决这个问题吗?
我在执行 db.FTSearch(FIELD 示例字段 >= 2013 年 2 月 25 日)时收到错误消息:“文本字段中不支持关系运算符”。这里的字段名称是“examplefield”,字段类型是日期时间
任何人都可以帮助解决这个问题吗?
正如西蒙链接到的问题中所述,数据库中的 UNK 表将确定在进行全文搜索时用于字段的数据类型。您在任何特定表单上为该字段设置的数据类型无关紧要 - UNK 表中的字段由文档上的实际数据定义,并且不会自动重新计算自身。因此,您首先要确保它所在的每个文档中的“examplefield”都具有日期时间的数据类型。但是,您还需要重新构建 UNK 表。有两种方法 - 我知道 - 可以做到这一点:
此外,您可以使用免费软件 NotesPeek 工具检查 UNK 表中字段的数据类型 - 您可以从这里下载: http ://www-01.ibm.com/support/docview.wss?uid=swg24005686
一般来说,我不会使用 FTSearch。我将创建一个隐藏视图,其中第一列按示例字段排序为格式为 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
在我看来,它有更好的时间响应,代价是把负载放在服务器上。与往常一样,这取决于您要处理的数据类型。