VIEW(ビュー)の情報を参照するには、
VIEWSデータディクショナリビューを参照します。
VIEWSデータディクショナリの種類
VIEWSデータディクショナリビューには以下3種類があります。
| DBA_VIEWS | 全てのVIEW情報を対象とする ※権限が必要 | 
|---|---|
| ALL_VIEWS | ログインユーザが参照可能なVIEWを対象とする | 
| USER_VIEWS | ログインユーザが保持するVIEWを対象とする | 
VIEWSデータディクショナリの定義
VIEWSデータディクショナリの定義です。
(DBA_VIEWS/ALL_VIEWS/USER_VIEWSの違いは、OWNER列のありなしのみです。)
| 列名 | 型 | メモ | 
|---|---|---|
| OWNER | VARCHAR2 | ビューの所有者 ※DBA_VIEWS/ALL_VIEWSのみ  | 
| VIEW_NAME | VARCHAR2 | ビュー名 | 
| TEXT_LENGTH | NUMBER | ビューソースのサイズ | 
| TEXT | LONG | ビューのソース | 
| TYPE_TEXT_LENGTH | NUMBER | |
| TYPE_TEXT | VARCHAR2 | |
| OID_TEXT_LENGTH | NUMBER | |
| OID_TEXT | VARCHAR2 | |
| VIEW_TYPE_OWNER | VARCHAR2 | |
| VIEW_TYPE | VARCHAR2 | |
| SUPERVIEW_NAME | VARCHAR2 | |
| EDITIONING_VIEW | VARCHAR2 | |
| READ_ONLY | VARCHAR2 | 読み取り専用かどうか (Y:読取専用 N:読取専用でない)  | 
サンプル
VIEWSデータディクショナリビューを検索するサンプルです。| 
					 1  | 
						SELECT view_name FROM ALL_VIEWS;  | 
					
| 
					 1  | 
						SELECT view_name FROM DBA_VIEWS WHERE OWNER = 'TARO';  | 
					
| 
					 1  | 
						SELECT text FROM USER_VIEWS WHERE view_name = 'V_USER';  | 
					
メモ
- VIEW_NAMEを検索条件とする場合、VIEW名は必ず大文字で指定してください。
 - DBA_VIEWSを検索する場合は、すべてのVIEWを参照する権限が必要です。
 - ソースはTEXTカラム1か所に1VIEW分のソースが格納されています。
 - SQL/Plus で検索する時は、「set pagesize 0」「set long 10000」とやっておくと見やすいです