首页 > 解决方案 > CONTAINS 中的对象名称在数据库中未找到

问题描述

我继承的软件包之一包含以下 Oracle Text 函数:

包含(标题,'查询','转换((标记,“ SCHEMA1.fuzzy_thesaurus ”)))

但是当我查询 DBA_OBJECTS 时,我没有看到 OBJECT_NAME = 'FUZZY_THESAURUS"。

但该包是 VALID,这意味着 SCHEMA1.fuzzy_thesaurus 不引用数据库对象。

我对 Oracle Text 了解不多。

这个SCHEMA1.fuzzy_thesaurus指的是什么?

标签: sqloracleoracle-text

解决方案


它是一个词库,Oracle Text 使用它来扩展您的查询。您可以通过以下查询找到它:

-- be sure to be connected on SCHEMA1 
select *
  from CTX_USER_THESAURI 
where UPPER(THS_NAME) = UPPER('fuzzy_thesaurus'); 

要查找有关词库和 OT 的更多信息,请使用 Oracle 官方文档:

https://docs.oracle.com/cd/B28359_01/text.111/b28303/cthes.htm#g1009100


推荐阅读