DB テーブル定義 を Markdown や HTML で作成する方法
October 23, 2017

DEVELOPMENT

web
database

データベースのテーブル定義書をつくるのは面倒ですので、既存のDBから、簡単に作りたいということで、

  1. マークダウン作成(スクリプトからDBにアクセスして取得)
  2. マークダウンを表示できない人のために、HTMLへ

で、作成する方法です。

わざわざGUIソフト等を入れて作るが面倒だと思い、とりあえずmarkdownで出力できないかどうか調べてたら、スクリプトを書いてくれてる方がたくさんいらっしゃったので、拝借し、ちょっと修正し、使わせていただきました。ありがとうございます。

Markdownで出力する

下記の方のコードを使わせていただきました。PHPです。 僕はローカルにanyenvでphpを入れてますが、バージョン等でエラーが出るかもしれないので、シンタックスエラーが出たら都度修正して下さい。 MySQLのテーブル定義をマークダウン(Qiita用)で出力する テーブル指定部分、僕のPHPバージョン的に、「[]」が使えない古いバージョンをよく使っているので(業務上)、少し改良しました。

37G: $table_names = explode(",", $argv[2]);

※第一引数に、「データベース名」、第二引数に「テーブル名」をカンマ区切りで。すべてのテーブルを指定する場合は「ALL」を指定します。

MarkdownからHTML出力

brewで「pandoc」を入れます。

brew install pandoc

HTMLに出力するのですが、CSSを適応したいと思います。今回は「github」のものを使います。

▶ gist.github.com

pandoc -c github.css input.md -o output.html

するとHTMLが作成されるので、他の人に渡すにも良いですね。

必要に応じてカラムの説明等は、HTMLを修正して、コメント欄に記述してあげれば完璧です。

まとめ

わざわざGUI等のソフトを入れずに、簡単に素早く、誰にでも閲覧できるような形でテーブル定義が作成できました。

うかい / 株式会社UKAI
うかい@代表取締役兼エンジニア株式会社UKAI
Nobuyuki Ukai

株式会社UKAI 代表取締役CEO。建築を専攻していたが、新卒でYahoo!Japanにエンジニアとして入社。その後、転職、脱サラ、フリーランスエンジニアを経て、田舎へ移住し、ゲストハウスの開業、法人成り。ゲストハウス2軒、焼肉店、カフェ、食品製造業を運営しています。詳細はこちらから

🙏よかったらシェアお願いします🙏
WRITTEN BY
うかい / 株式会社UKAI
うかい@代表取締役兼エンジニア株式会社UKAI

Nobuyuki Ukai

株式会社UKAI 代表取締役CEO。建築を専攻していたが、新卒でYahoo!Japanにエンジニアとして入社。その後、転職、脱サラ、フリーランスエンジニアを経て、田舎へ移住し、ゲストハウスの開業、法人成り。ゲストハウス2軒、焼肉店、カフェ、食品製造業を運営しています。詳細はこちらから

CONACT
入力して下さい
Slack からもどうぞ

※お気軽にどうぞ!(6月20日まで有効!お早めに)

COPYRIGHT © 2020 UKAI CO., LTD. ALL RIGHTS RESERVED.