ここでは、初心者から実践的に学べるプログラミングスクール「ウェブカツ!!」のWEBサービス部を受講している生徒の方向けにさらに「データベースのテーブル設計」についての理解度を上げるため特訓をしていきます。
ここでは「MySQL」を題材にします。
DBのテーブル設計鬼練4:メルカリの登場人物を考えよう
問題
下記の問題に答えてください。
メルカリというサービスに出てくる登場人物を挙げてください。
ヒント
もう分かりますよね?
答え
答えは
- ユーザー(人)
- 管理者(人)
- 商品(物、コト)
- 金(物、コト)
ですね。
もっと細かく言えば、「ユーザー」には「種類」として
- 売り手
- 買い手
が存在してます。
実際、テーブル設計していく時に
「売り手」「買い手」をどうDBでデータを持つのか?
ってことになります。
ユーザーは「売り手」でもあり「買い手」にもなるわけですが、どうやってDBに記録しておくのか?
です。
(あとでまたやるけど考えられそうな人は今のうちに考えてみてね)
管理者というのも、サービス運営の中では「問い合わせ機能」であったり、「違反報告チェック機能」だったりがありますね。
そうすると
- 問い合わせ管理者
- 違反報告チェック管理者
なんていうような「種類」もありますね。
ここらへんもどうDBで持つのか?(DBでデータを保持しておくことを「持つ」ってよく言いいます)ということです。
ちなみに楽天市場のような「モール型」も同じです。
- ユーザー(人)
- 管理者(人)
- 商品(物、コト)
- 金(物、コト)
ですね。
同じく「売り手(店子)」と「買い手」がいるわけです。
登録してお金を払えば、買い手が売り手にもなれますね。
求人広告サイトなんかもまた同じです。
- ユーザー(人)
- 管理者(人)
- 求人広告(物、コト)
- 金(物、コト)
ですよね。
ここまででもう分かったと思いますが、どんなサービスだろうがまずもって
- ユーザー(人)
- 管理者(人)
- 商品(物、コト)
- 金(物、コト)
になるわけです。