テーブル構成

目次
  • 解説
  • 1. テーブル構成
進捗を変更する




解説

1. テーブル構成


DBには『Java WEB中級』コースと同じように、「ユーザー」を管理するusersテーブルと、「つぶやき」を管理するtweetsテーブルを作成し、それぞれ以下のカラムを持たせます。

usersテーブル

カラム名制約説明
idserialPRIMARY KEYユーザーID
mailtextNOT NULL
UNIQUE
メールアドレス
display_nametextNOT NULL氏名
passtextNOT NULLパスワード
profiletextプロフィール

tweetsテーブル

カラム名制約説明
idserialPRIMARY KEYつぶやきID
user_idintegerNOT NULL
REFERENCES users (id)
ユーザーID
posttextNOT NULLつぶやき内容
created_attimestampNOT NULL
DEFAULT CURRENT_TIMESTAMP
作成日時
updated_attimestamp更新日時

変更点

Java WEB中級』コースでは、学習の為tweetsテーブルのpostカラムはnullを許可する仕様でしたが、本コースではNOT NULL制約を設定しています。

また、テーブル間のデータの整合性を保つため、tweetsテーブルのuser_idカラムに外部キー制約を設定しています。よって、つぶやきデータを登録する際にusersテーブルを参照するようになり、存在しないユーザーの場合は登録を弾くようになります。