こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

カラム情報(主キー、データ型、桁数等)を取得するには

テーブルに格納されているカラム情報(カラム名、主キー、データ型、データの桁数)を取得したいと考えています。

主キー情報とそれに付随するカラム情報は現在下記のSQL文で取得しています。

SELECT
C.TABLE_NAME ,
COL.COLUMN_NAME,
C.CONSTRAINT_TYPE,
COL2.DATA_TYPE,
COL2.DATA_LENGTH
FROM
USER_CONSTRAINTS C,
USER_CONS_COLUMNS COL,
USER_TAB_COLUMNS COL2
WHERE C.TABLE_NAME = COL.TABLE_NAME
AND C.CONSTRAINT_NAME = COL.CONSTRAINT_NAME
AND C.TABLE_NAME = COL2.TABLE_NAME
AND COL.COLUMN_NAME = COL2.COLUMN_NAME
AND C.CONSTRAINT_TYPE = 'P'
AND UPPER(C.TABLE_NAME) = UPPER('テーブル名')
ORDER BY C.TABLE_NAME, COL.POSITION

ここで、主キー以外のカラムに対しても同様にカラム情報を取得したいのですが、どのように取得すればよろしいでしょうか?

※カラム名、主キー有無、データ型、桁数 でカラム情報を取得できれば最も良いのですが、
主キー情報を除いた全体のカラム情報を取得する事ができれば、こちらの情報でも助かります

宜しくお願い致します。

投稿日時 - 2008-01-21 10:29:31

QNo.3699289

困ってます

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(1)

全てのカラムは、USER_TAB_COLUMNSに存在するので、USER_TAB_COLUMNSに対して、
他表(USER_CONSTRAINTS,USER_CONS_COLUMNS)を外部結合するように変更すれば良いかと。

投稿日時 - 2008-01-21 12:47:49

お礼

お礼が遅れてしまい申し訳ありません。
回答ありがとうございました。

投稿日時 - 2008-02-05 10:46:32

あなたにオススメの質問