老师,非空约束也有名字吧,只是没法像表级设置约束时那样自定义名字,但系统也还是一样会自动生成名字。因此也可以更改非空约束的名字。对不?而且非空约束的类型和检查约束一样,都是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