DDL作成ツール
【まとめ記事】
作業効率化まとめ
テーブルの項目定義書からDDLを作成します
ER図から生成するなどの場合は定義書
→ER図
→DDL
といった手順になるので
本記事の対象にはなりません
##定義書のフォーマット
絶対ではないのですが、論理名
, 物理名
, 型
, 桁
, null許容
の順がよいかと
PK条件やリレーションは今回は割愛します
##CREATE文生成
Excelでの操作を前提としています
A1から張り付けておかないと痛い目にあいます
table_name.sql
| テーブル名| table_name|
| 論理名| 物理名| 型| 桁| not null|
| id| id| serial| 4| 〇|
| 氏名| name| varchar| 256| 〇|
・
・
・
こちらを元に変換していきます
ddl.sql
| テーブル名| table_name|
| 論理名| 物理名| 型| 桁| not null| query
| id| id| serial| 4| 〇| =$B3&" "&$C3&IF($D3 <> "" ,"("&$D3&")" ,"")&IF($E3="〇"," NOT NULL", "")
| 氏名| name| varchar| 256| 〇|
・
・
・
これによって
id serial(4) NOT NULL
となる
=$B3&" "&$C3&IF($D3 <> "" ,"("&$D3&")" ,"")&IF($E3="〇"," NOT NULL", "")
そして、カラムが100個の場合
="CREATE table_name ("&TEXTJOIN(", ",TRUE,F3:F102)&")"
とすれば晴れて完成である
以下でテーブル名、カラム名に論理名を付与
comment_on.sql
-- テーブル名
="COMMENT ON "&$B$1&" IS "&$A$1
-- カラム名
="COMMENT ON "&$B$1&"."&$B3&" IS "&$A3