MODIFY COLUMN в oracle - Как проверить, можно ли обнулять столбец, прежде чем устанавливать на nullable?

Я пытаюсь заменить коллегу в работе с Oracle и натолкнулся на загадку. Пытаясь написать скрипт для изменения столбца в nullable, я столкнулся с прекрасной ошибкой ORA-01451:

<code>ORA-01451: column to be modified to NULL cannot be modified to NULL
</code>

Это происходит потому, что столбец уже равен NULL. У нас есть несколько баз данных, которые необходимо обновить, поэтому в своем ошибочном предположении я решил, что установка его в NULL должна работать по всем направлениям, чтобы убедиться, что все были в курсе, независимо от того, установили ли они этот столбец вручную в NULL или нет. Тем не менее, это, очевидно, вызывает ошибку у некоторых людей, которые уже имеют столбец как обнуляемый.

Как можно проверить, является ли столбец уже обнуляемым, чтобы избежать ошибки? Что-то, что могло бы реализовать эту идею:

<code>IF( MyTable.MyColumn IS NOT NULLABLE)
   ALTER TABLE MyTable MODIFY(MyColumn  NULL);
</code>

Ответы на вопрос(2)

Ваш ответ на вопрос