何はさておきER図作らんと。
そんなこんなテーブルで遊んだり、Joinとか言っている前にスキーマすら無い。
それでは設計すらできないので、ER図(テーブルの依存関係図)を作らなきゃいけないのですね。
すっかり飛んでいました。
なので、ER図を使用するのが一度きりではないので必要なものをインストールします。
即時性且つ、今後スキーマ追加もあると思うので、色々ドローイングツールを調べていました。
そうしたら昔は絵的な概念でER図を作っていたのですが、やはりEditorと連携して、且つパラレル作業でドローイングしたいとなります。
そこで、以下のツールを選択しました。
PlantUML
と、、その前にPlantUMLのパッケージ自体がJarファイルだった、、
という訳でJavaですね。
私は現在WindowsPCを使用しているので、OpenJDKが必要となります。
(あぁ昔はMacBookだったから常にJava使用していたのに。。。)
そんな訳で、以下よりOpenJDKをDownload→Installします。
そして、いよいよプラグインをインストールします。
PCを再起動、VSCodeを起動します。
File→NewFileで、「名前.pu」というファイルを作成。
(Thank you Chosing PlantUML~とか出ます。)
実際に以下の書式の様に必要な情報を入力して行きます。
一旦、以下のように書き込みました。
@startuml JRA_Race
entity Race_MS {
+ race_id[PK]
--
着順
枠番
馬番
馬名
性齢
斤量
騎手
タイム
着差
単勝
人気
馬体重
調教師
# 馬名id [FK]
# 騎手id [FK]
# 調教師id [FK]
}
entity 馬名_MS {
+ 馬名id [PK]
+ 調教師id [PK]
馬名
生年月日
調教師
馬主
生産者
産地
父
父母
父父
父父母
父父父
父父父母
父父父父
父父父父母
父父父父父
父父父父父母
母
母父
母母父
母母
母母母父
母母母
母母母母父
母母母母
母母母母母父
母母母母母
# 父id [FK]
# 母id [FK]
# 馬主id [FK]
# 生産者id [FK]
}
entity 騎手_MS {
+ 騎手id [PK]
順位
騎手名
所属
生年月日
1着
2着
3着
着外
出走数
重賞出走
重賞勝利
特別出走
特別勝利
平場出走
平場勝利
芝出走
芝勝利
ダート出走
ダート勝利
勝率
連対率
複勝率
獲得賞金
}
entity 調教師_MS {
+ 調教師id [PK]
順位
調教師名
所属
生年月日
1着
2着
3着
着外
出走数
重賞出走
重賞勝利
特別出走
特別勝利
平場出走
平場勝利
芝出走
芝勝利
ダート出走
ダート勝利
勝率
連対率
複勝率
獲得賞金
}
entity 種牡馬_MS {
+ 父id [PK]
順位
出走頭数
勝利頭数
出走回数
勝利回数
重賞出走
重賞勝利
特別出走
特別勝利
平場出走
平場勝利
芝出走
芝勝利
ダート出走
ダート勝利
勝馬率
EI
入着賞金
平均距離(芝)
平均距離(ダート)
}
entity BMS_MS {
+ 母id [PK]
順位
出走頭数
勝利頭数
出走回数
勝利回数
重賞出走
重賞勝利
特別出走
特別勝利
平場出走
平場勝利
芝出走
芝勝利
ダート出走
ダート勝利
勝馬率
EI
入着賞金
平均距離(芝)
平均距離(ダート)
}
entity 馬主_MS {
+ 馬主id [PK]
順位
馬主名
1着
2着
3着
着外
出走数
重賞出走
重賞勝利
特別出走
特別勝利
平場出走
平場勝利
芝出走
芝勝利
ダート出走
ダート勝利
勝率
連対率
複勝率
獲得賞金
}
entity 生産者_MS {
+ 生産者id [PK]
順位
生産者名
1着
2着
3着
着外
出走数
重賞出走
重賞勝利
特別出走
特別勝利
平場出走
平場勝利
芝出走
芝勝利
ダート出走
ダート勝利
勝率
連対率
複勝率
獲得賞金
}
Race_MS }o--|| 騎手_MS
Race_MS }o--|| 馬名_MS
Race_MS }o--|| 調教師_MS
馬名_MS }o--|| 調教師_MS
馬名_MS }o--|| 馬主_MS
馬名_MS }o--|| 生産者_MS
馬名_MS }o--|| 種牡馬_MS
馬名_MS }o--|| BMS_MS
@enduml
大体書けたらプレビューします。
「Alt+D」でDiagramを表示します。
これで作成済みのスキーマが表示できます。
物凄く面白いです。
どうやらコイツはSQLからもER図を作成できるようです。
スゲェなぁw
申し訳ありませんが又もや徹夜で作業してしまいました。。。(´;ω;`)
四苦八苦とまでは行きませんでしたが、次回はコード作成です。
テーブル作成とか繰り返しとか色々やることが多そうですね。
それに必要なものが見つかり、未だScrapingが必要そうです。
なのでそのコードも書かないとですね。
道は険しい!
といいつつ、Editorとか色々吟味したい所もあります。
コンテナで開発環境作るとかOpenAIが標準装備のEditorも、ねぇ。
もう少しPCが良いモノだったら考えたい所。
一旦は(一旦ばかりな一反木綿w)VSCodeでやっていくか。
ではまた!!
追記
実はこのER図はご承知の通り、実際に取りたいデータに不足分も多い上に、これでは予想に使用できない情報になっております。
この通りのコピペ利用では無意味の情報になります。
ご承知おきの程、お願い致します。
あくまでもPlantUMLの使用方法や、ER図描写方法の説明に特化しております。
なので、実際に「各人での調整を行いつつ」のご使用をお願い致します<(_ _)>