DB構造の整理を怠ったがために、トラブルった話 出来上がった構造 USER テーブル id name login_id password deleted あるべきであった姿 USER テーブル id name deleted AUTH_INFORMATION テーブル user_id FOREIGN USER.id login_id UNIQUE password 起こった問題 「別の人がログインしてるんだけど」 ログインID、パスワードを間違いなく入力している 表示されるのは別人の名前 deletedカラムで論理削除したデータとlogin_idが重複していた 運用回避 もともと、ユーザではなくシステム担当者がinsertする運用だった データ追加前にlogin_idでselectしてチェックする運用に 結論:分けときましょう。 AUTH_INFORMAION にあるデータはすべて有効で、