0

あるクライアントは、IBM Notes アプリケーションを長年使用しており、途中で誰かがフィールドのタイプを数値からテキストに変更しました。

したがって、[myField] = "1234" のような FT 検索を実行しようとすると、"クエリが理解できません" というエラー メッセージが表示されます。

私が行う場合: [myField] = 1234 動作しますが、ヒットは返されません。myField = "1234" のドキュメントがありますが。

このフィールドは、デザインのテキスト タイプです。

テスト用に新しいビューを作成し、1 つのフォームからのドキュメントのみを許可しました。

全文索引を削除しました (ファイル システム上であっても) updall -X Fixup -r 全文索引を作成しました

私のテスト ビューでは、検索されているフィールド コンテンツがテキスト @IsText(myField) 型であるかどうかを示す 1 つの列があり、すべての行が次のように表示されます。

上記のいずれも機能しなかったため、新しいデータベース コピーをローカルに作成しました。同じ問題。

まったく新しいデータベース (テスト用のみ)、フォーム、ビュー、および全文インデックスを作成しましたが、それは機能します。

既存のデータベース設計のどこかに古いフィールド タイプが格納されているように感じます...

どんなアイデアでも大歓迎です。

ありがとう!

/J

4

2 に答える 2

5

データ型とフィールド名は UNK テーブルに格納されます。フィールド名ごとに 1 つのエントリしかないため、データ型が異なるアプリケーションで同じフィールド名を複数回使用しないことが重要です。

ここでブログを書いたように、UNK テーブルを再構築する必要がありますhttp://www.intec.co.uk/full-text-search-musings/

Duffbert がここhttp://www.duffbert.com/duffbert/blog.nsf/d6plinks/TDUF-5SMHV4で述べているように、オフライン コンパクトでなければならないことに注意してください。圧縮を実行するときに誰かがデータベースにいる場合、圧縮は失敗し、UNK テーブルは再構築されません。

于 2013-06-13T12:42:49.853 に答える