2013-01-07 1 views
0

나는 사용자의 세 위치 개까지 저장됩니다 테이블 user에서 세 개의 필드를 가지고있다. 테이블의 스키마는 다음과 같습니다 :데이터베이스 스키마 제안

UserID, name, location_1, location_2, location_3 

이제는 사용자가 즐겨 찾는 위치를 저장해야하므로 두 가지 방법이 있습니다.

favorite_location이라는 이름의 또 다른 열 (표 user)을 세 개의 저장된 위치 중 하나의 값으로 추가합니다.

OR

I 만 (열 favorite_location에) 위치의 위치를 ​​저장한다, 즉 2 location_2은 좋아하는 위치를 의미한다.

UPDATE :

내가 다른 테이블 UserLocation에게

+0

, 당신은 위치의 이름이 포함 된 FavoriteLocation 칼럼에 "사용자"테이블을 추가 할 수 있습니다. –

+3

"fav_location", "location_1", "location_2"열이있는 방법은 어떻습니까? "fav_location"이 필수 인 경우이 3 개의 열만 있으면 충분합니다. 그렇지 않은 경우 다른 비트 열 "IsFavoriteDefined"를 추가하십시오. – Sunny

+1

시퀀스가 ​​중요하지 않은 경우 location_1, location_2 및 location_3과 같은 세 개의 열을 가질 수 있습니다. 그런 다음 location_1에 좋아하는 위치를 입력하고 다른 두 위치는 각각 location_2 및 location_3에 입력하십시오. 이렇게하면 새 테이블이나 새 열을 추가 할 필요가 없습니다. –

답변

0

어느 쪽이든을 생성 할 수있는 한계를 가지고, 당신은 favorite_location 열을 만들 것입니다. 따라서 전체 위치 값 또는 열 인덱스 만 저장하는 것이 좋습니다. 다른 테이블을 생성하지 않으려면

관련 문제