oAuth만을 이용하여 가입하고, 로그인하는 유저 시스템의 ERD를 설계해봅니다.
id PK int AUTOINCREMENT
email string UNIQUE
accessToken string
accessTokenExpiry date
refreshToken string
providerCode int
name varchar(255)
profileImage string NULL
fcmToken string NULL
createdAt date
updatedAt date
deletedAt NULL date
FcmToken의 경우 userId 정보만 있다면 FCM 보내는 작업에 대해 token 값 외의 추가 정보는 필요하지 않습니다!
또한 첫 로그인, 로그아웃 후 동일 기기/앱 타 사용자 로그인, 타 기기 로그인 과 같은 로그인 정보가 변경됐을 때 fcmToken 값의 변경이(사실상 fcmToken만) 필요합니다.
그래서 fcm 토큰 정보와 userId를 분리했고, 잘 변경되지 않는 사용자 이름, 프로필 이미지와 같은 정보 역시 다른 테이블로 분리했습니다.