一所懸命に手抜きする

デスクワークばかりのスポーツ嫌いで50歳も過ぎ、いよいよ足腰に衰えを感じつつある昨今。

AS400の表名は英数字でも、SYSTABLESに日本語説明みたいなものがある!どうやって取得する?

RDMSのカタログは表データ

 RDBMS(リレーショナルデータベース)の特徴であるカタログ。DB2のカタログのうちのSYSCOLUMNSについて前回は紹介しましたが、他にも重要情報が詰まっているのがカタログです。

AS/400DB2におけるカタログの主な内容
SQL操作 格納される情報 内容 DB2での格納先表名
CREATE TABLE 表情報 ライブラリ名・表名・作成者名・列数・表説明 SYSTABLES
CREATE TABLE 列情報 表名・列名・データ型・列別名・キー情報など SYSCOLUMNS
CREATE INDEX 索引情報 表名・索引名など SYSINDEXES
CREATE VIEW ビュー情報 ファイル名・SELECT文など SYSVIEWS
GRANT 権限情報 表名・許可されているユーザーなど SYSTABAUTH

今回は、表説明(日本語でもOKな記述)について、特定のキーワードを含むファイルを検索するSQLを紹介します

select dbname,name,label from QSYS2.SYStables where label like '%キーワード%'

 dbname : ライブラリ名
  name : ファイル名(表名)
 label : 日本語対応記述
で取得できます。

日本語記述に 売掛 を含むファイルを検索するSQL
select dbname,name,label from QSYS2.SYStables where label like '%売掛%'
実行結果
DBNAME  NAME     LABEL
 MAST   RCVMAST  売掛先マスタ
 SALES  RCV01R   売掛累積
 SALES  RCVBAD   売掛回収困難
 SALES  RCVDUE   売掛未収
 SALES  RCVDUECR 売掛クレジット未収
 SALES  RCVDUER  売掛未収R

NAMEだけでは何が何だかわかりませんが、LABELに記載された日本語説明でよく理解できます。