oracle查看物化视图的索引,oracle – 物化视图中的域索引返回零行

我有Oracle DB的问题 – 在物化视图上通过CONTAINS()搜索后,域索引返回零行.我看到物化视图充满了数据,我还使用过程ctx_ddl.sync_index()进行域索引同步.

什么有用:

>创建表

>插入数据

>创建域索引

> SYNC DOMAIN INDEX

>通过包含找到行 – 返回行

什么不起作用:

>创建表

>插入数据

>创建物化视图

>刷新材料化视图

>在物化视图中创建域索引

>物化视图中的同步域索引

>在物质化视图中查找包含行数 – 返回零行(类似于%的工作量)

如果没有物化视图,为什么一切正常?

这是我的查询(您可以复制粘贴并在您的oracle db中尝试):

– 创建表

创建表“PCOUNTERPARTY”(“ID_COUNTERPARTY”编号(10,0),“TXT_SEARCH_FULL_NAME”NVARCHAR2(260),CONSTRAINT“PCOUNTERPARTY_PK”主键(“ID_COUNTERPARTY”));

–INSERT DATA.

插入PCOUNTERPARTY(ID_COUNTERPARTY,TXT_SEARCH_FULL_NAME)值(1184,’MARTINKO3′);

– 创建物化视图

创建物质化视图m_pcounterparty

选择c.ID_COUNTERPARTY,CAST(c.TXT_SEARCH_FULL_NAME AS varchar2(260 CHAR))作为txt_search_full_name_all

来自PCOUNTERPARTY c;

– 创建域索引

在m_pcounterparty上创建索引IDXM_1_pcounterparty(TXT_SEARCH_FULL_NAME_ALL)indextype是ctxsys.context PARAMETERS(‘SYNC(ON COMMIT)’);

– 物化视图的刷新

EXECUTE DBMS_MVIEW.REFRESH(‘M_PCOUNTERPARTY’);

– 索引的刷新

exec ctx_ddl.sync_index(‘IDXM_1_pcounterparty’);

– 在物化视图中搜索

选择

TXT_SEARCH_FULL_NAME_ALL

M_PCOUNTERPARTY c

哪里

CONTAINS(c.TXT_SEARCH_FULL_NAME_ALL,’martin’,1)> 0; – 返回零,这是问题

–c.TXT_SEARCH_FULL_NAME_ALL LIKE’%MARTIN%’; – 返回行但我们想通过CONTAINS搜索

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值