0

我在我们的一个应用程序服务器日志中收到错误“包含 CONTAINS 的无效查询”。该服务昨天没有遇到此错误,我不知道我们的代码中可能发生了任何更改。

任何人都可以深入了解在我们的代码之外可能导致此错误的原因吗?

4

2 回答 2

1

1) CONTAINS 运算符使用单词索引。检查是否为错误查询正确设置了索引。

2) 如果在一个很大的 CHARACTER 字段上定义了单词索引,您可以考虑增加 Stash Area (-stsh) 启动参数的值。

3) 您还可以尝试使用带有 IDXBUILD 或 IDXFIX 限定符的 PROUTIL 实用程序来重建索引。

于 2012-10-17T21:20:41.130 回答
0

这是由 Progress ABL 还是您的逻辑产生的错误?你有一个进度错误号码吗?

您是否更改了数据库的编码?CONTAINS 运算符依赖于分词规则,如果您更改数据库的编码(例如更改为未定义分词规则的 UTF-8),您可能会遇到 CONTAINS 运算符不再工作而无需更改任何内容代码。如果是这种情况,您必须生成分词规则。但这只是一个猜测。

于 2012-10-18T08:25:25.713 回答