“查询不可理解” - 全文搜索字段类型已更改 [英] "Query is not understandable" - Full text searching where field types have changed

查看:169
本文介绍了“查询不可理解” - 全文搜索字段类型已更改的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

客户有一个长寿命的IBM Notes应用程序,沿线的某个人将字段类型从数字改为文本。



所以,现在当我们试图做FT搜索:[myField] =1234收到错误信息:查询不可理解。

1234它的作品,但不会返回任何命中。即使有一个文件myField =1234。



该字段在设计中为文本类型。



我创建了一个新的测试视图,只允许一个表单中的文档。



删除全文索引(甚至在文件系统上)
updall -X
Fixup -r
创建全文索引



在我的测试视图中,我有一列显示字段内容是搜索的是文本@IsText(myField),所有行显示:1(所以它的字段内容必须是文本)

以上都没有工作,所以我创建了一个新的数据库本地复制。
同样的问题。



创建一个全新的数据库(仅用于测试),表单,视图和全文索引,并且可行。



感觉像现有的数据库设计存储旧字段类型...
$ b $ p

任何想法赞赏。

谢谢!

/ J

解决方案

数据类型和字段名称存储在UNK表中。每个字段名称只有一个条目,因此不要在具有不同数据类型的应用程序中多次使用相同的字段名称。



您需要重建UNK表,因为我在这里写博客 http://www.intec.co.uk/全文搜索沉思/



请注意,它必须成为离线契约,正如Duffbert在这里所说的 http://www.duffbert.com/duffbert/blog.nsf/d6plinks/TDUF- 5SMHV4 的。如果有人在数据库中执行压缩包时,它将失败,UNK表将不会重建。


A client have a long lived IBM Notes application where someone along the line changed the type of a field from number to text.

So, now when we're trying to do an FT search like: [myField] = "1234" receive the error message: "Query is not understandable".

If I do: [myField] = 1234 it works but won't return any hits. Even though there's a document where myField = "1234".

The field is of type text in the design.

I've created a new view for testing, only allowing documents from one form.

Deleted the full text index (even on the file system) updall -X Fixup -r Created full text index

In my test view I've got one column that shows if the field content being searched is of type text @IsText(myField) and all rows shows: 1 (so it's field content must be text)

None of the above worked so I created a new database copy locally. Same problem.

Created an entirely new database (for testing only), form, view and full text index and that works.

Feels like the existing database design somewhere stores the old field type...

Any ideas appreciated.

Thanks!

/J

解决方案

Datatypes and field names are stored in the UNK table. There is just one entry per field name, so it's critical not to use the same field name more than once in an application with different datatypes.

You need to rebuild the UNK table, as I blogged here http://www.intec.co.uk/full-text-search-musings/

Note, it must be an offline compact, as Duffbert says here http://www.duffbert.com/duffbert/blog.nsf/d6plinks/TDUF-5SMHV4. If anyone is in the database when you do the compact, it will fail and the UNK table will not be rebuilt.

这篇关于“查询不可理解” - 全文搜索字段类型已更改的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆