※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

  • 12.1 データディクショナリ
データディクショナリ表とデータディクショナリビューから構成される。
  1. SYSユーザーが所有する。
  2. Oracleによって管理される。
【データディクショナリ表】
◆データベースの管理情報が格納される。
【データディクショナリビュー】
◆ユーザーはデータディクショナリビューを使い情報を検索する。

  • 12.2 データディクショナリビュー
4種類があり、接頭語で区別される。
  1. USER_xxx・・・ユーザーが所有する各種オブジェクトまたはユーザー自体に関する情報
  2. ALL_xxx・・・ユーザーがアクセスできる各種オブジェクト、または参照できる情報
  3. DBA_xxx・・・データベースの中の全てのオブジェクトに関する情報。特別な権限を持つユーザーのみアクセス可能
  4. V$xxx・・・Oracleサーバーの各種統計情報

  • 12.5 データディクショナリビュー各種
  1. USER_OBJECTS:作成日、最終変更日、状態などを確認できる。
  2. ALL_TABLES:表の表名、記憶域の情報などの定義情報
  3. CAT:所有するオブジェクトの名前(TABLE_NAME列)とタイプ(OBJECT_TYPE)の2つの簡略化された情報

  • 12.6 USER_TAB_COLUMNS
所有する表の列の情報が格納されている。
DESCRIBE実行時に表示される情報とほぼ同じもの。

  • 12.7 制約を確認するデータディクショナリビュー
  1. USER_CONSTRAINTS:制約名、制約のタイプなどの情報
  2. USER_CONS_COLUMNS:制約が定義されている列の情報

  • 12.8 制約のタイプの意味
USER_CONSTRAINTSデータディクショナリビューで表示される制約のタイプの意味は以下のとおり。
  1. P・・・主キー制約
  2. U・・・一意制約
  3. C・・・NOT NULL制約とチェック制約
  4. R・・・外部キー制約
  5. V・・・WITH CHECK OPTIONのビュー
  6. O・・・WITH READ ONLYのビュー

  • 12.10 USER_VIEWSデータディクショナリビュー
  1. USER_VIEWS :ビューの定義情報などを確認する。

USER_TABLES:表の定義情報などを確認する。


  • 12.11 ビューのテキスト
USER_VIEWSのTEXT列でビューのテキストを確認できる。
◆TEXT列のデータ型はLONG型
◆iSQL*Plus(およびSQL*Plus)がLONG列データを読み込むサイズは、デフォルトでは80バイトになっている。
→SET LONGコマンドでサイズを大きくしてからUSER_VIEWSを検索する。

  • 12.12 順序の確認
順序の確認にはUSER_SEQUENCESとUSER_OBJECTSの2つのデータディクショナリビューを使う。
  1. USER_SEQUENCE・・・順序名を含む順序の定義情報を確認できる。
◆LAST_NUMBER列は、次にキャッシュする先頭の番号を示す。メモリにキャッシュ済みの番号が全て使われ、新たな番号の生成を要求されたときにキャッシュする。NOCACHE指定時のLAST_NUMBER列値は、次に生成される順序番号を示す。
  1. USER_OBJECTS・・・・オブジェクト名(順序名)、作成日などの情報を確認できる。


  • 12.17 索引定義情報の確認
  1. USER_INDEXES・・・索引の名前、一意性などを確認できる。
  2. USER_IND_COLUMNS・・・索引が定義されている列を確認できる。

  • 12.20 COMMENT文
  1. 表、列、ビュー、スナップショットにコメントを追加できる。
  2. 最大4000バイトまで追加できる。
  3. コメントはデータディクショナリに格納される。
★索引にはコメントを追加することはできない

  • 12.22 COMMENT文の基本構文{ }内は選択
COMMENT ON {TABLE 表名 | COLUMN 表名.列名} IS 'コメント';

  • 12.23 コメントの削除方法
コメントに空の文字列('')を指定する。
(例)COMMENT ON EMP IS ''