dポイントプレゼントキャンペーン実施中!

oracle初心者です。
テーブルの存在をチェックする命令はあるのでしょうか?
オンラインマニュアルやSQLポケットリファレンスなどを参考に探したのですが見つかりませんでした。
SELECT count(*) FROM テーブルA・・・などでステータスを判断(ZERO以外は未存在)し存在有無を確認するような方法しかないのでしょうか?
よろしくお願いします。

A 回答 (2件)

データディクショナリの USER_TABLES を利用すると良いでしょう。

これは表と同様に扱えます。

例えばこのような感じです

select * from user_tables
where table_name = 'TABLE_A';

TABLE_A が(自分のテーブルとして)あれば1件引っかかりますし、なければ結果0件になります。

データディクショナリには他にもいろいろありますので詳しくは参考 URL をご参照ください。

参考URL:http://cyberam.dip.jp/database/oracle/oracle/dd/ …
    • good
    • 1
この回答へのお礼

THX1138様
回答ありがとうございます。
USER_TABLESを使用したところ、期待していた通りの結果を得ることが出来ました。
ありがとうございました。

お礼日時:2005/10/13 14:23

SQL*Plus が利用できる環境であれば DESC コマンドが利用できます。



SQL> DESC xxxx
xxxx の定義が表示されます。
テーブルが無い場合には存在しません。と表示されます。

xxxx はテーブルを主に指定するのですが、
DESC コマンドはテーブルだけではなくプロシージャやパッケージも指定できます。
そのときはプロシージャのパラメータなどの定義が出力されます。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
説明不足ですみません。
実際は、実行PG内で判断したかったので、「DESC」では、無理なようです。
今後は、わかりやすく質問するように気をつけます。
ありがとうございました。

お礼日時:2005/10/13 14:28

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す


このQ&Aを見た人がよく見るQ&A