2

尝试向表中添加新列时出现此错误:

ALTER TABLE TBLCOMPANY ADD EVENTCATEGORYLEVEL NUMBER (20) DEFAULT 1
Error report:
SQL Error: ORA-00604: error occurred at recursive SQL level 1
ORA-29861: domain index is marked LOADING/FAILED/UNUSABLE
00604. 00000 -  "error occurred at recursive SQL level %s"
*Cause:    An error occurred while processing a recursive SQL statement
           (a statement applying to internal dictionary tables).
*Action:   If the situation described in the next error on the stack
           can be corrected, do so; otherwise contact Oracle Support.

我不知道为什么会这样。我试图用谷歌搜索它,但似乎没有人有答案。(分贝建议的行动是荒谬的)。

4

3 回答 3

3

我发现了问题!这是因为我的用户没有创建索引的特权。我建议任何有同样问题的人运行下面的查询,看看他们是否有足够的权限来做他们想做的事情:

select * from session_privs;
于 2013-01-18T13:48:41.937 回答
1
ORA-29861: domain index is marked LOADING/FAILED/UNUSABLE

您有一个损坏或仍在加载的域(oracle 文本)索引。

运行它来查看它/他们:

select index_name, status from user_indexes
where index_type = 'DOMAIN' and table_name = 'TBLCOMPANY';

您必须重建或删除索引才能继续。

于 2013-01-18T12:35:36.797 回答
1

尝试重建TBLCOMPANY表上的所有索引。

如何查找索引:

select index_name from dba_indexes where table_name='TBLCOMPANY';

重建索引:

alter index indexname rebuild;
于 2013-01-18T12:33:12.900 回答