我的表table_abc中存在一個數據。not null在oracle中啓用novalidate問題
有一列CONTEXT_NAME這是非強制性的,但現在我想修改此列,並使其mandaroty
例如:
ALTER TABLE table_abc MODIFY CONTEXT_NAME VARCHAR2(240) NOT NULL;
這將拋出一個錯誤
第1行的錯誤: ORA-02296:無法啓用(APPS。) - 發現空值
因此,我使用了無效驗證碼,如
Alter table table_abc modify CONTEXT_NAME not null enable novalidate;
但現在,當我看到表的結構,它不顯示context_ame爲非空;
Name Null Type
--------------------- -------- --------------
NAME NOT NULL VARCHAR2(700)
ITEM_DESCRIPTION VARCHAR2(2000)
ITEM_TEXT_TL_15 VARCHAR2(4000)
ITEM_DESCRLONG VARCHAR2(4000)
CREATED_BY VARCHAR2(64)
CREATION_DATE DATE
LAST_UPDATE_DATE DATE
LAST_UPDATED_BY VARCHAR2(64)
LAST_UPDATE_LOGIN VARCHAR2(32)
CONTEXT_NAME VARCHAR2(240)
BF_NAME VARCHAR2(264)
Shouldnt context_name not null?
您需要首先擺脫NULL值。 –
我實際上是想給一個默認值..有沒有其他的懷呢?我不想觸摸現有的數據? –