SQL Server Management Studio로 복합 키를 만들려면 어떻게해야합니까?


163

SQL Server Management Studio로 복합 키를 만들려면 어떻게해야합니까?

두 개의 INT 열이 테이블의 ID (고유)를 형성하기를 원합니다.

답변:


356

여기에 이미지 설명을 입력하십시오

  1. 설계 변수 테이블 탭을 엽니 다
  2. 두 개의 INT 필드를 강조 표시하십시오 (첫 번째 열의 회색 블록을 Ctrl / Shift + 클릭)
  3. 마우스 오른쪽 버튼으로 클릭-> 기본 키 설정

4
여러 필드를 강조 표시하려면 "열 이름"및 "데이터 유형"열 앞의 블록을 클릭하십시오. Ctrl / Shift + 열 이름 필드를 클릭하면 실제로 아무 작업도 수행되지 않습니다.
Pimgd

3
따라서 하나는 문자열이고 다른 하나는 정수이면 불가능합니까? 보이지 않는 것 같습니다 ...
B. 클레이 섀넌

3
나는 이것을 downvote하지만 OP는 SSMS에서 어떻게 해야하는지 OP가 구체적으로 깨달았습니다. 항상 데이터베이스 변경 사항을 스크립팅해야합니다. 이와 같은 도구를 사용하는 경우 스스로 변경하는 방법을 배우지 못할 것입니다.
JonnyRaa

2
@JonnyLeeds는 거기에 매우 높은 말입니다. 사람들이 선호하는 것이 GUI에 어떤 문제가 있습니까?
leinad13

4
@ leinad13 나는 나쁜 하루를 보내고 있었을 것이다! 그러나 가장 큰 문제는 반복 할 수 없으며 일반적으로 사람들이 제어 할 수없는 임시 변경을 수행하고 데이터베이스 / 스키마 문제를 해결하기 위해 조정하는 것을 의미합니다. 그것은 매우 나쁜 징조입니다-문서화되지 않았습니다 (예를 들어 수정 코드를 작성하여 버전 관리에 체크인하거나 데이터베이스 버전에 상관없이 올바른 변경 사항을 자동으로 적용하는 도구를 가짐) 설치 후 데이터베이스에 동일한 스키마가 없어지 자마자 심각한 문제가 발생합니다
JonnyRaa

63

여기에 몇 가지 코드가 있습니다.

-- Sample Table
create table myTable 
(
    Column1 int not null,
    Column2 int not null
)
GO

-- Add Constraint
ALTER TABLE myTable
    ADD CONSTRAINT pk_myConstraint PRIMARY KEY (Column1,Column2)
GO

테이블이 이미 생성되었다고 가정하기 때문에 제약 조건을 별도의 문으로 추가했습니다.


SSMS의 쿼리 창에서 이것을 실행할 수 있기 때문에이 답변이 맞는 것 같습니다 ...;)
dance2die

2
FTW 스크립팅 및 명시 적 명명 외부 ADD PRIMARY KEY및 내부 PRIMARY KEY정의는 키에 임의의 이름을 부여하므로 db 다이어그램 + 테이블이없는 경우 어디에 속하는지 바진 고를 고통스럽게 만들 수 있습니다.
Daevin

35
create table my_table (
    id_part1 int not null,
    id_part2 int not null,
    primary key (id_part1, id_part2)
)

14

디자인 모드에서 (오른쪽 클릭 테이블 수정 선택) 두 열을 마우스 오른쪽 버튼으로 클릭하고 기본 키 설정을 선택하십시오.


7

SQL Server Management Studio에서 테이블 디자이너를 엽니 다 (테이블을 마우스 오른쪽 단추로 클릭하고 '디자인'선택)

Ctrl 키를 누르고 있으면 왼쪽 테이블 여백에서 둘 이상의 열이 강조 표시됩니다.

상단의 표준 메뉴 표시 줄에서 작은 '키'를 누르십시오

끝났습니다 ..

:-)


5

테이블 디자인 뷰에서 두 행을 모두 강조 표시하고 키 아이콘을 클릭하면 복합 기본 키가됩니다.

귀하의 질문에 대해 잘 모르겠지만 테이블 당 하나의 열만 IDENTITY 열이 될 수 있습니다.


4
create table myTable 
(
    Column1 int not null,
    Column2 int not null
)
GO


ALTER TABLE myTable
    ADD  PRIMARY KEY (Column1,Column2)
GO
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.