2

null以外の列を持つテーブルを作成すると、Oracleは自動的にチェック制約をnull以外に作成します:このように(user_constraintsビューからのクエリ)

NAME                           TYPE SEARCH_CONDITION
------------------------------ ---- ---------------------------------------
SYS_C0036357                   C    "SUPPLIER_ID" IS NOT NULL
SYS_C0036358                   C    "SUPPLIER_NAME" IS NOT NULL

したがって、Oracle(Auto)によって作成された制約、またはユーザーによって作成された制約を知る方法はありますか。

ありがとうございました。

4

1 に答える 1

7

GENERATED表のフィールドuser_constraints(または)を確認できますall_constraints

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
于 2012-09-28T08:47:30.980 に答える