web-dev-qa-db-ja.com

クエリを使用してVIEW DDLを取得する

データベースの再構築では、データベース(Oracle)の各テーブルとビューのDDLを取得する必要があります。 SQL Developerで各テーブル/ビューのプロパティに移動してSQLを取得したくありません。

私は使用してテーブルのDDLを取得しました-

select dbms_metadata.get_ddl('TABLE','Table_name','Schema_Name') 
  from dual;

しかし、VIEWとMVIEWの問題に直面しています。誰でも、テーブル以外の要素にコマンド/キーワードを提供できますか?.

また、結果を最初の列をTableName、2番目の列をDDLとしてExcelファイルにエクスポートしたいと思います。

7
Mithun Khatri

以下のビューのクエリを試してください。

select text from ALL_VIEWS where upper(view_name) like upper(<view_name>;

Mviewの場合:

select query from ALL_MVIEWS where upper(mview_name) like upper(<mview_name>);
21
Sra1

マテリアライズドビューの場合:

select dbms_metadata.get_ddl('MATERIALIZED_VIEW','MView_name','Schema_Name') 
  from dual;

サポートされているすべてのオブジェクトタイプをここで確認してください: DBMS_METADATA:オブジェクトタイプ

0