내 웹 앱에 대한 사용자 정의/설정을 저장하는 데는 두 가지 아이디어가 있습니다. 이 작업을 수행하는 데 더 많은 방법이있을 수 있으며 새로운 아이디어에 대해 개방적입니다. 당신이 비정상적으로 변경 될 수 있습니다 설정/사용자 정의를 저장하기위한 추천 방법 자주 추가/제거되는 열 저장
? 예를 들어 이번 주에는 사용자가 할 수있는 12 가지 맞춤 설정이 있습니다. 다음 주에 우리는 짧은 시간에 새로운 것을 추가 할 것입니다.그래서, 수 :
- 스토어 기본 키로 사용자 계정과 열로 설정 (등 VARCHAR, 등의 int로서 VARCHAR로
user_image_url
,time_offset
,background_color
). 새로운 설정이있을 때마다 또 다른 열을 추가해야한다는 생각이 맘에 들지 않지만이 열이 가장 쉽고 빠르며 가장 명백한 방법이라고 생각합니다. - 계정 ID, 설정 ID 및 설정 값만 varchar로 저장하는 테이블을 만듭니다. 그래서
(account_id, setting_id, value) values (1, 2, 'http://logos.com/yourlogo.png')
과 같은 것입니다. 생각은setting_id
을 저장하는settings
테이블과 결합하는 것입니다. 이것 (내가 볼 수있는)의 큰 단점은 모든 설정이 동일한 유형 (varchar)이어야한다는 것입니다. 나중에 엉덩이에 물린다면 확실하지 않습니다.
고마워요! 동적 "성긴"값
가 추가 또는 제거하고 얼마나 자주; 표가 충분히 큰 경우 열 추가 및 제거에 다소 시간이 걸릴 수 있습니다. 두 번째 옵션은 EAV 모델링이라고도합니다. –
네, 저는 열을 추가하기 어렵고 두 번째 데이터베이스를 설정하고 switcheroo를 수행해야하는 회사에 왔습니다. 의견을 보내 주셔서 감사합니다! – tau