0

私はかなり大きなオラクルデータベース、50以上のテーブル、リレーションの負荷を持っています。私が生成したリレーショナル モデルは (ご想像のとおり..) 本当に恐ろしく見えます。

だから私は疑問に思っています:

たとえば、 「このテーブル A があり、A を指している FK を持つテーブルのみをサブビューに含めたい」のようなサブビューを生成することは可能ですか?

私は Oracle SQL Developer 4.0.3.16 を実行していますが、念のため、別の環境をインストールするつもりです。

4

3 に答える 3

1

確実に。「ルート」テーブルを選択します。右クリックして、「隣人を選択」を押します。進むべきレベル数を教えてください。

これらのアイテムを選択した状態で、もう一度右クリックし、[選択したものからサブビューを作成] をクリックします。

あなたのサブビューがあります。

サブビューは、読みやすさ、レポート、および検索のために大きなモデルをより管理しやすくするのに最適です。

ここでサブビューについて少し話します。

于 2015-03-18T13:41:09.980 に答える
0

ALL_CONSTRAINTSテーブルには、外部キーを含むすべての種類の制約が含まれています。外部キーの制約タイプは'R'、Referential (または Referenced) です。

SELECT
  A.TABLE_NAME  AS ORIGINATING_TABLE ,
  A.COLUMN_NAME AS ORIGINATING_COLUMN,
  A.CONSTRAINT_NAME                  ,
  C.OWNER                            ,
  C.R_OWNER                          ,
  C_PK.TABLE_NAME AS REFERENCED_TABLE
FROM
  ALL_CONS_COLUMNS A
JOIN ALL_CONSTRAINTS C
ON
  A.OWNER           = C.OWNER AND
  A.CONSTRAINT_NAME = C.CONSTRAINT_NAME
JOIN ALL_CONSTRAINTS C_PK
ON
  C.R_OWNER           = C_PK.OWNER AND
  C.R_CONSTRAINT_NAME = C_PK.CONSTRAINT_NAME
WHERE
  C.CONSTRAINT_TYPE = 'R' AND
  C_PK.TABLE_NAME   = 'AO_563AEE_MEDIA_LINK_ENTITY';
于 2015-03-18T12:16:25.893 に答える
0

In user_constraints you'll find all constraints. There are also the foreign key constraints. You can find the table with:

select table_name 
from user_constraints
where constraint_type = 'R'
  and r_constraint_name = 'primary key of A';
于 2015-03-18T12:19:15.317 に答える