テツコさん(♂)です。
OracleのsqlPlusにてよく使ってたのが
テーブルのカラム名を表示してくれる
「desc table名」でした。
DB2を使い始め、
DB2にも「desc」はあるんだろう~と思い
db2cmdにて打ってみたところ帰ってきたのは、
「'desc'は、内部コマンドまたは外部コマンド~~~」の
エラーメッセージのみ-.-
db2では、
「syscat.columns」に80項目にわたり
テーブルの情報が格納されていて、
db2cmdにてバッパァをMAXにしても1行では表示しきれずに
わけわからない表示になってしまうのです。
テツコさん(♂)が知りたいのは、
columnの名, columnの長さ, typeだけなのに。。。
そのために、毎度一々SQL文をうつのも面倒だし、
なにかないかな~とずっと探してた所
ありました~とっても簡単な方法が^^。
できる人はこんな簡単な方法をお使いになっていました。
簡単な方法: ↓↓↓↓↓ ・面倒なSQLをバッチファイル(.bat)に作成しておいて、 テーブル名は引数でお渡し! ・バッチファイルは環境変数の「PATH」に指定しておく! ↑↑↑↑↑それでは、一つ一つやってみましょ~
①バッチファイルの作成:
ファイル名:desc.bat 表示したいのは、キーの有無、colnameの名、type, lengthのみとして 「db2 select keyseq, substr(colname,1,20) as colname, substr(typename,1,10) as type,length from syscat.columns where lcase(tabname) = '%1' 」 (%1は引数のテーブル名) ②バッチファイルの格納場所を「PATH」に追加: バッチファイルの格納場所が「C:\DB2\BAT」だとしたら マイコンピュータの右クリック > プロパティ > 詳細設定 > 環境変数 > システム環境変数の 「PATH」 の最後に 「;C:\DB2\BAT」 を追加します。 ③db2cmdを起動して 「desc テーブル名」とうって、Enterキーを静か~に押すとテーブルの情報が表示されてしまうので~す^^。
よしよ~し(^-^)
今日も金曜日、
みなさん~
Have A Nice Weekend ~~~