テーブル生成コマンド(DDL)の一部として、テーブル/カラムそれぞれにコメント情報を登録することができますが、そのコメント情報に論理名を設定するという慣例があるかと思います。当アプリでは、この慣例を利用して設定された項目名(項目論理名)で、テーブル定義書をより簡単に生成することが可能となります。
補助情報ファイル(DatabaseDefineSubInfo.xlst)の「col.csv」シートや「table-col.csv」シートへ項目を登録しなくても論理名が表示されることになります。
■MySQLの場合 (MySQL/MariaDBの場合はCREATE TABLE文でカラムコメントを指定する仕様となっています) CREATE TABLE M0001 ( ORG_CD CHAR(2) NOT NULL COMMENT '組織コード', ORG_NAME VARCHAR(50) NOT NULL COMMENT '組織名', DEL_FLG TINYINT DEFAULT 0 COMMENT '削除フラグ', CRE_REC DATETIME(6) DEFAULT CURRENT_TIMESTAMP(6) COMMENT '登録日', CRE_EMP_CD VARCHAR(4) COMMENT '登録社員コード', UPD_REC DATETIME(6) DEFAULT CURRENT_TIMESTAMP(6) COMMENT '更新日', UPD_EMP_CD VARCHAR(4) COMMENT '更新社員コード', CONSTRAINT PK_M0001 PRIMARY KEY(ORG_CD) ) COMMENT = '組織マスタ';
※各DB別サンプル
動作設定画面:Settings「Comment To Name」チェックONを設定することで、「col.csv」シート、 「table-col.csv」シート を設定することなく、日本語の項目名を表示させることができます。
以下のSQLを実行してコメント列に項目名(論理名)が表示されるようであれば、この機能を利用することができます。
MariaDB(MySQL)
select COLUMN_NAME ,COLUMN_COMMENT from INFORMATION_SCHEMA.COLUMNS where TABLE_NAME = 'テーブルID'
PostgreSQL
select T1.column_name ,T5.description as COLUMN_COMMENT from information_schema.columns T1 inner join pg_stat_user_tables T2 on T1.table_name = T2.relname left join pg_description T5 on T2.relid = T5.objoid and T1.ordinal_position = T5.objsubid and T5.objsubid <> 0 where T1.table_catalog = 'DB ID.' and T1.table_name = 'テーブルID'
Oracle
select COLUMN_NAME ,COMMENTS from USER_COL_COMMENTS where TABLE_NAME = 'テーブルID'
SQL Server
select t2.name as col_name ,t3.value comment from sys.tables t1 inner join sys.columns t2 on t1.object_id = t2.object_id left join sys.extended_properties t3 on t2.object_id = t3.major_id and t2.column_id = t3.minor_id where t1.name = 'テーブルID'
上記の確認SQL(MariaDB/MySQL)実行結果
ただし、col.csv / table-col.csv のように、項目説明文を設定することはできません。