teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

追記

2019/09/29 12:55

投稿

hasshy
hasshy

スコア102

title CHANGED
File without changes
body CHANGED
@@ -22,8 +22,9 @@
22
22
  このような構成の場合、テーブルを分けますか?
23
23
 
24
24
  ## 私が考えている構成
25
- ただ、テーブル構成を見やすくするために下記に分けるのも有効なのではないかと思います。
25
+ テーブル構成を見やすくするために下記に分けるのも有効なのではないかと思います。
26
+
26
- - name、name_kanaは、```user_profiles```のようなテーブルを用意して表示情報を分ける
27
+ - age、name_kanaは、```user_profiles```のようなテーブルを用意して表示情報を分ける
27
28
  - is_service_a、is_service_bは、```user_options```のようなテーブルを用意してサービスの利用情報を分ける
28
29
 
29
30
  ### users
@@ -55,4 +56,5 @@
55
56
  is_service_b|Bサービスを利用できる権限がある
56
57
 
57
58
  ## 懸念点
58
- テーブルを分ければ分けるほどリレーションが大きくなるので不用意に分ける必要性はないのではないかと考えています。
59
+ - テーブルを分ければ分けるほどリレーションが大きくなるので不用意に分ける必要性はないのではないかと考えています。
60
+ - もしかしたら、見やすいと思うのは自分だけかもしれないため、分けない方が良いのではないか?

2

修正

2019/09/29 12:55

投稿

hasshy
hasshy

スコア102

title CHANGED
File without changes
body CHANGED
@@ -11,6 +11,7 @@
11
11
  password|パスワード
12
12
  name|名前(漢字、ページ内の表示するユーザー情報)
13
13
  name_kana|名前(ひらがな)
14
+ age|年齢
14
15
  is_service_a|Aサービスを利用できる権限がある
15
16
  is_service_b|Bサービスを利用できる権限がある
16
17
 
@@ -27,11 +28,13 @@
27
28
 
28
29
  ### users
29
30
  ログインに必要な最低限の情報テーブル。
31
+ ユーザー名も頻繁に使うのでこっちに含める
30
32
 
31
33
  カラム名|概要
32
34
  ---|---
33
35
  id|ユーザーID
34
36
  password|パスワード
37
+ name|名前(漢字、ページ内の表示するユーザー情報)
35
38
 
36
39
  ### user_profile
37
40
  サービスに関係ない個人情報をまとめたテーブルです。
@@ -39,8 +42,8 @@
39
42
  カラム名|概要
40
43
  ---|---
41
44
  user_id|ユーザーID
42
- name|名前(漢字、ページ内の表示するユーザー情報)
43
45
  name_kana|名前(ひらがな)
46
+ age|年齢
44
47
 
45
48
  ### user_options
46
49
  サービスに関係する情報をまとめたテーブル。

1

タイトル修正

2019/09/29 12:48

投稿

hasshy
hasshy

スコア102

title CHANGED
@@ -1,1 +1,1 @@
1
- 【データベース設計】ユーザー用のテーブルに持たせるべきでしょうか?
1
+ 【データベース設計】ユーザー用のテーブルにはどこまで情報を持たせるべきでしょうか?
body CHANGED
File without changes