Ошибка SQL: ORA-30556: для столбца, который нужно изменить, определен функциональный индекс или индекс растрового соединения - PullRequest
0 голосов
/ 04 сентября 2018

Когда я пытаюсь изменить длину столбца моей таблицы, я получаю следующую ошибку Oracle:

 SQL Error: ORA-30556: either functional or bitmap join index is defined on the column to be modified
 30556. 00000 -  "either functional or bitmap join index is defined on the column to be modified"
 *Cause:    An ALTER TABLE MODIFY COLUMN was issued on a column on which
            either a functional index or bitmap join index exists.
 *Action:   Drop the functional or bitmap join index before attempting to modify the column.

Как мы можем изменить размер нашего столбца?

1 Ответ

0 голосов
/ 04 сентября 2018

Нет необходимости удалять индекс и изменять размер столбца, а затем снова создавать индекс.

У нас есть альтернативный способ в Oracle, и это следующее:

  1. Сначала отключите индекс. (напр .: ALTER INDEX index_cust ON CUSTOMER DISABLE)

  2. Затем измените размер столбца таблицы Customer

  3. Затем включите индекс. (напр .: ALTER INDEX index_cust ON CUSTOMER REBUILD)

Примечание: И это действительно только для функциональных индексов

...