3

私はJavaアプリケーションに取り組んでいます。JDBC 接続を使用して Oracle DB に接続し、メタデータを取得しました。メタデータからテーブル、列、ビューなどの情報を取得しています。

ここで、アプリケーション内のテーブルと列のコメントをメタデータから個別に取得したいと考えています。この詳細を取得するにはどうすればよいですか?

4

3 に答える 3

5

ここで、アプリケーション内のテーブルと列のコメントをメタデータから個別に取得したいと考えています。この詳細を取得するにはどうすればよいですか?

テーブル コメントの場合は、viewを使用し[DBA|ALL|USER]_TAB_COMMENTSます。

例:

SQL> SELECT table_name,
  2    comments
  3  FROM dba_tab_comments
  4  WHERE owner   ='OE'
  5  AND table_name='INVENTORIES';

TABLE_NAME  COMMENTS
----------- ---------------------------------------------------------------
INVENTORIES Tracks availability of products by product_it and warehouse_id.

列のコメントには、viewを使用し[DBA|ALL|USER]_COL_COMMENTSます。

SQL> SELECT table_name,
  2    column_name,
  3    comments
  4  FROM dba_col_comments
  5  WHERE owner   ='OE'
  6  AND table_name='INVENTORIES';

TABLE_NAME  COLUMN_NAME          COMMENTS
----------- -------------------- ----------------------------------------------------------------------------
INVENTORIES PRODUCT_ID           Part of concatenated primary key, references product_information.product_id.
INVENTORIES WAREHOUSE_ID         Part of concatenated primary key, references warehouses.warehouse_id.
INVENTORIES QUANTITY_ON_HAND
于 2016-02-03T08:24:58.730 に答える
2
SELECT *
  FROM user_tab_comments;

SELECT *
  FROM user_col_comments;

ユーザーの代わりに all|dba プレフィックスを使用することもできます。

于 2016-02-03T07:42:36.947 に答える
1

dbms_metadata パッケージを試してください。それを使用すると、コメント、許可、およびその他のものを db から抽出できます。 SELECT DBMS_METADATA.GET_DEPENDENT_DDL('COMMENT','TABLE_NAME','SCHEMA') FROM DUAL

于 2016-02-03T10:59:21.173 に答える