[20211231]ORA-01418 specified index does not exist.txt

lfree發表於2021-12-31

[20211231]ORA-01418 specified index does not exist.txt

--//維護索引改名發現報如下錯誤:
ORA-01418: specified index does not exist

$ oerr ora 01418
01418, 00000, "specified index does not exist"
// *Cause:
// *Action:

--//檢查表定義索引的名字定義如下,超過30個字元,在toad下版本可能比較老舊僅僅看到前面30個字元。
IF_YS_MZ_ZT01_SSLB_SSDM_ZTBH_1E7
--//僅僅顯示IF_YS_MZ_ZT01_SSLB_SSDM_ZTBH_1

1.環境:
xxxx1> @prxx
==============================
PORT_STRING                   : x86_64/Linux 2.4.xx
VERSION                       : 19.0.0.0.0
BANNER                        : Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
BANNER_FULL                   : Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.9.0.0.0
BANNER_LEGACY                 : Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
CON_ID                        : 0
PL/SQL procedure successfully completed.

--//只能在sqlplus下完成,以後運維注意,最好目前還是限制索引30個字元。避免不必要的麻煩。
2.改名:
xxxx1> alter index "PORTAL_HIS"."IF_YS_MZ_ZT01_SSLB_SSDM_ZTBH_1E7" rename to IF_YS_MZ_ZT01_SSLB_SSDM_ZTBH_X;
Index altered.

--//測試一下修改大於30個字元沒有問題,但是toad下顯示的是30個字元,再修改提示上面的資訊。
--//以後運維要注意這個細節。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-2850347/,如需轉載,請註明出處,否則將追究法律責任。

相關文章