웹 사이트에 대한 사용자 기본 설정을 저장하는 가장 좋은 방법은 무엇일까? 기본적으로 기본 시간대, 기본 텍스트 크기 등과 같은 기본값이 있습니다. 각 설정에 대해 별도의 열을 만드는 것은 실용적이지 않습니다. 현재 생각할 수있는 유일한 방법은 기본 설정을 위해 users
테이블에 단일 열을 추가하고 거기에 모든 설정을 적용하는 것입니다.MySQL에서 사용자 환경 설정을 저장하는 가장 효율적인 방법은 무엇입니까?
예를 들어, 한 열만 다음과 같은 서식을 사용할 수 있습니다 : timezone:GMT;text_size:12;default_value1:something;default_value2:FALSE
. 그런 다음 PHP에서 그것을 잡을 때, 나는 로그인 한 사용자에 대해이 열을 선택하고 $ _SESSION [ 'settings'] [ 'setting_key'] = "setting_value"로 설정하여 결과를 폭발시킵니다.
더 똑똑한 방법이 있습니까, 아니면 이미 올바른 방향으로 가고 있습니까? 이것에 유일한 단점은 모든 것이 함께 일괄 처리되기 때문에 각 특정 설정을 통해 검색 할 수 없다는 것입니다.
다른 데이터 유형은 어떻게 처리됩니까? 예를 들어, boolean, int 또는 varchar 값을 가질 수 있습니다. 검색 할 수 없다고해서 문제가되지 않을까요? –
또한 마지막 접근 방식으로 여러 테이블에서 설정 및 값을 갖는 방법을 빠르게 할 수 있습니까? 그것은 단지 사물을 복잡하게 만드는 것처럼 보일 것입니다. –
그러면 문자열 대신 id로 설정을 조회 할 수 있습니다. select 절은 훨씬 빠릅니다. 타입에 관해서는, 당신은 소프트웨어에서 타입 변환을해야 할 것입니다.별로 최적은 아니지만, 설정 당 열이 없어지는 방법입니다. – favoretti