老師,非空約束也有名字吧,只是沒(méi)法像表級(jí)設(shè)置約束時(shí)那樣自定義名字,但系統(tǒng)也還是一樣會(huì)自動(dòng)生成名字。因此也可以更改非空約束的名字。對(duì)不?而且非空約束的類(lèi)型和檢查約束一樣,都是C。
SQL> create table userinfo_n?
? 2 ?(id varchar2(10) not null,
? 3 ?username varchar2(20));
Table created.
SQL> select constraint_name,constraint_type,status from user_constraints
? 2 ?where table_name='USERINFO_N';
CONSTRAINT_NAME
--------------------------------------------------------------------------------
C STATUS
- --------
SYS_C00729107
C ENABLED
SQL> alter table userinfo_n
? 2 ?rename constraint SYS_C00729107 to not_null_constraint;
Table altered.
SQL> select constraint_name,constraint_type,status from user_constraints
? 2 ?where table_name='USERINFO_N';
CONSTRAINT_NAME
--------------------------------------------------------------------------------
C STATUS
- --------
NOT_NULL_CONSTRAINT
C ENABLED
2018-02-23
試了一下,是有名稱(chēng)的,也能用刪掉約束名稱(chēng)的方式來(lái)刪掉此約束,你好細(xì)致