创建 Oracle 文本索引失败

问题描述

我想使用以下命令为表的单列创建文本索引:

CREATE INDEX    product_fulltext_index 
ON              products( computed_name )
INDEXTYPE IS    ctxsys.context

我尝试搜索过,但还没有找到解决方案,可能是错误信息太模糊了

enter image description here

这是我的桌子设计:

enter image description here

解决方法

错误屏幕截图表明您正在尝试在 name 列上创建索引。您问题的文本表明列名称为 computed_name。那么,究竟是哪一个呢?

无论如何:如果它打开

name Nvarchar2(500)
     ^
     |
     

那么您就不能做您想做的事,因为您无法在数据类型使用国家字符集 (NVARCHAR2) 的列上创建 Oracle Text 索引。为什么不?因为 Oracle 不支持它。

要么将列的数据类型更改为例如VARCHAR2,或者接受你无法拥有想要的东西的事实。