[解決済み] OracleでDESCRIBEコマンドを使わずにテーブルを記述するにはどうしたらいいですか?
2022-03-15 17:29:09
質問内容
受講している授業で悩んでいます。DESCRIBEコマンドと同じように動作するOracleスクリプトを書く必要があります。私たちが使っている本には、データディクショナリをどのように扱うかについて、非常に不十分な説明があります。答えを求めているのではなく、正しい方向性を示してくれるものを探しています。
どのように解決するのですか?
あなたが探しているのは
USER_TAB_COLUMNS
- クエリが実行されるスキーマにおけるすべてのカラムとその説明 - あるいは
ALL_TAB_COLUMNS
- そのユーザーが閲覧する権限を持っているすべてのテーブルを除いて、同じです。
典型的なクエリーは次のようなものです。
select *
from user_tab_columns
where table_name = 'MY_TABLE'
order by column_id
column_id
はテーブル内の列の "順序"です。
MY_TABLE」は大文字で書くようにします。ただし、ケーシングをしてテーブルを追加している場合は、次のようにします。
= "MyTable"
.
具体的には
desc
は、以下と同じです。
ss64
は、Oracleの優れたリソースです。
select column_name as "Name"
, nullable as "Null?"
, concat(concat(concat(data_type,'('),data_length),')') as "Type"
from user_tab_columns
where table_name = 'MY_TABLE';
このようなビューをすべて
select * from dictionary
のトップレベルである
データ辞書
を見るか、あるいは
ドキュメント
.
また
DBA_TAB_COLUMNS
と同じです。
ALL_TAB_COLUMNS
しかし、データベースのすべてのテーブルについてです。これは、あなたがこれとテーブルの両方を表示する権限を持っていることを前提にしています。もし、このテーブルへのアクセス権を持っていない場合は、DBAから
SELECT ANY DICTIONARY
の権限が必要です。
関連
-
IntelliJ DataGrip Oracle 11gリモート接続の手順
-
sqlplusコマンドによるOracleデータベースへのさまざまなログイン方法
-
[解決済み] ORA-00955 "名前はすでに既存のオブジェクトによって使用されています"
-
[解決済み] MySQLの「スキーマの作成」と「データベースの作成」 - 違いはあるのか?
-
[解決済み] オラクル:テーブルが存在する場合
-
[解決済み】Oracleクエリが順序付け後に返す行数を制限するにはどうすればいいですか?
-
[解決済み】OracleでAUTO_INCREMENTでidを作成する方法は?
-
[解決済み] [Solved] データをコピーせずにOracleテーブルのコピーを作成するには?
-
[解決済み】Oracleでトップ1を行うには?[重複しています]
-
[解決済み】Oracleのデュアルテーブルとは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Oracleデッドロック検出クエリとその処理
-
Oracle11gアンインストール完全版グラフィックチュートリアル
-
LogMinerによるOracle Databaseの同期マイグレーション
-
ODBC sqlserverデータソースに接続するためのOracleの詳細な手順
-
Oracle 11gのダウンロード、インストール、グラフィックチュートリアルを使用します。
-
[解決済み] ORA-01461: LONG 値は、LONG 列への挿入にのみバインドできます-クエリー時に発生します。
-
[解決済み] ORA-01882: タイムゾーン領域が見つかりません。
-
[解決済み] PLS-00382: 式が不正です。
-
[解決済み] カラムが存在するにもかかわらず、ORA-00904が発生するのはなぜですか?
-
[解決済み] Oracleの全テーブルのリストを取得しますか?