0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

自動販売機を作ってみよう part6 - DB設計 答え合わせ編1

Last updated at Posted at 2019-06-04

前回の記事の最後に載せた、勘違いER図を元に、何がいけなかったか考えてみるss_er01.png

まず、オブジェクト的な思考にはなっているのでそれはオッケーと師匠から言われた。
(ホッとしたものの、本人としては全然ダメな気がしている…)

どう直すべきか

  • パーツはページごとに持たなくていい。
  • 同じ名前のデータは作らなくていい

実はデータベース上では 「購入した」履歴さえ残せればよい
メインとなるデータは以下の二つ

  • 購入履歴
  • 商品リスト

この二つさえあれば完成するのである。

データとして保持したいものはどれ?

カスタマイズしたい場所はどこ?

簡潔に、重複せずにに組める最強の方法を考えろ!

重要!種別の共通化をできるだけ行う。

決まり切った項目は一個のテーブルとしてマスターにできるのである!!
つまり、タイプ(温度、素材etc)は別テーブルにする。

忘れちゃいけない、各テーブルに入れたいもの

あと、フレームワークにもよるが、必ず入れるべき情報がある。

  • update_at
  • created_at
  • deleted_at

この三つは必ず入れておく。
ただし、改ざんを防ぐために、もしもこの3つの情報を表示、参照などさせたい場合は別にデータをつくっておくこと。

以上を踏まえて、次回、実際にER図を書き換えてみますよ!

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?