Sunday, April 22, 2012

Oracle Database:定義された制約の確認方法



SQLで制約を確認する


USER_CONSTRAINTS 静的ディクショナリビューを利用すると、定義されている制約の一覧が確認できます。




SQL> column constraint_name format a20
SQL> column table_name format a20
SQL> select constraint_name,constraint_type,table_name,status from user_constraints;

CONSTRAINT_NAME CO TABLE_NAME STATUS
-------------------- -- -------------------- ----------------
PK_DEPT P DEPT ENABLED
PK_EMP P EMP ENABLED
FK_DEPTNO R EMP ENABLED



CONSTRAINT_TYPEで表示される制約定義の種類は、以下です。

・C - 表でのチェック制約

・P - 主キー

・U - 一意のキー

・R - 参照整合性

・V - ビューでのチェック・オプション付き

・O - ビューで読取り専用

・H - ハッシュ式

・F - REF列を含む制約

・S - サプリメンタル・ロギング



HTML出力レポートで設定されている制約を確認する


Oracle SQL Developer を使うと、もっとスマートにデータベースオブジェクトのレポートを作成することができます。

右クリックで、「DBドキュメントの生成」これだけです。


生成された HTMLを開いてみてください。

表ごとに設定されている制約をHTMLにて一覧表示することができます。






Oracle Database:定義された制約の確認方法 https://blogs.oracle.com/oracle4engineer/entry/column_constraint_list

No comments: