2016-07-31 9 views
0

나는 테이블 객실과 사용자가 있습니다. 내가 원하는 테이블 사용자 room_id는 클러스터 키이고 id_user는 중복 될 수 있습니다. 예를 들어 room1에는 user (1,2,3 ..), room2에는 사용자 (1,2,3)가 있습니다. 사용자의 이름은 다를 수 있습니다. 예 : room1과 함께 ID 사용자가 1이고 이름이 Joni이지만 room2 ID 사용자는 1이고 이름은 Joini 또는 Sam이 될 수 있습니다.
그러나 room_id 및 user_id를 샘플링 할 때는 중복이 불가능합니다. 전 들어 Booth 사용자 1이, 그것은 행이 두 번째 들어 Booth 및 사용자를 저장 할 수 없습니다 1.mysql에서 클러스터 키를 만드는 방법은 무엇입니까?

enter image description here

는 샘플 카산드라의 DB를의

+0

분명하지 않지만 복합 고유 인덱스를 찾고있는 것 같습니다. id_room, id_user가 고유해야합니다. – scaisEdge

답변

0

당신이 (복합 고유 인덱스를 찾고 있습니다 될 수 있을까) 키를

ALTER TABLE `your_table` ADD UNIQUE `room_user_index`(`id_room`, `id_user`); 
+0

놀라운! 일하고있어! – Hudo

0

당신이 다음 기본 키 (복합 기본 키) 클러스터 된 인덱스와 고유 키로 생성됩니다 id_rooms 및 id_user의 열을 모두 지정합니다.

복합 키의 순서는 검색 속도에 중요합니다.

더 나은 시각을 얻기 위해 관계형 dbms 개념에 대해 학습하는 것이 좋습니다.