Oracle自动生成的检查约束

Oracle自动生成的检查约束,oracle,check-constraints,Oracle,Check Constraints,当我创建列不为null的表时,Oracle会自动创建检查约束以使其不为null:如下所示(从user_constraints视图进行查询) 所以,有没有办法知道约束是由Oracle(Auto)创建的,还是由用户创建的 谢谢。您可以查看用户约束表中的生成的字段(或所有约束) 给出: T | CONSTRAINT. | GENERATED ---------------------------- T | SYS_C008425 | GENERATED NAME T | T_PK | U

当我创建列不为null的表时,Oracle会自动创建检查约束以使其不为null:如下所示(从user_constraints视图进行查询)

所以,有没有办法知道约束是由Oracle(Auto)创建的,还是由用户创建的


谢谢。

您可以查看
用户约束
表中的
生成的
字段(或
所有约束

给出:

T | CONSTRAINT. | GENERATED
----------------------------
T | SYS_C008425 | GENERATED NAME
T | T_PK        | USER NAME

+1,不知道生成的列。名称以SYS_C开头的事实也是一个线索。
create table t (a number not null, constraint t_pk primary key(a));
select table_name, constraint_name, generated
 from user_constraints
 where table_name = 'T';
T | CONSTRAINT. | GENERATED
----------------------------
T | SYS_C008425 | GENERATED NAME
T | T_PK        | USER NAME