SQL Server 2008에서 복합 기본 키를 만드는 방법
SQL Server 2008에서 테이블을 만들고 싶지만 복합 기본 키를 만드는 방법을 모르겠습니다. 어떻게하면 되나요?
create table my_table (
column_a integer not null,
column_b integer not null,
column_c varchar(50),
primary key (column_a, column_b)
);
CREATE TABLE UserGroup
(
[User_Id] INT NOT NULL,
[Group_Id] INT NOT NULL
CONSTRAINT PK_UserGroup PRIMARY KEY NONCLUSTERED ([User_Id], [Group_Id])
)
SSMS (Enterprise Manager)를 통해 ...
- 복합 키를 작성할 테이블을 마우스 오른쪽 단추로 클릭하고 디자인을 선택하십시오 .
- 복합 키로 구성하려는 열을 강조 표시하십시오.
- 해당 열을 마우스 오른쪽 버튼으로 클릭하고 기본 키 설정
SQL을 보려면 당신은 다음 마우스 오른쪽을 클릭하면 Table
> Script Table As
>Create To
이 파티에 늦었다는 것을 알고 있지만 기존 테이블의 경우 다음을 시도하십시오.
ALTER table TABLE_NAME
ADD CONSTRAINT [name of your PK, e.g. PK_TableName] PRIMARY KEY CLUSTERED (column1, column2, etc.)
MSSQL Server 2012의 경우
CREATE TABLE usrgroup(
usr_id int FOREIGN KEY REFERENCES users(id),
grp_id int FOREIGN KEY REFERENCES groups(id),
PRIMARY KEY (usr_id, grp_id)
)
최신 정보
추가해야합니다!
외래 / 기본 키 변경을 추가하려면 먼저 제약 조건이있는 키를 만들어야합니다. 그렇지 않으면 변경할 수 없습니다. 아래에 이렇게 :
CREATE TABLE usrgroup(
usr_id int,
grp_id int,
CONSTRAINT FK_usrgroup_usrid FOREIGN KEY (usr_id) REFERENCES users(id),
CONSTRAINT FK_usrgroup_groupid FOREIGN KEY (grp_id) REFERENCES groups(id),
CONSTRAINT PK_usrgroup PRIMARY KEY (usr_id,grp_id)
)
실제로 마지막 방법은 건강하고 연속적입니다. FK / PK 제약 조건 이름 (dbo.dbname> 키> ..)을 볼 수 있지만 제약 조건을 사용하지 않으면 MSSQL은 임의의 FK / PK 이름을 자동으로 만듭니다. 필요한 모든 변경 사항 (표 변경)을 확인해야합니다.
스스로 표준을 세우는 것이 좋습니다. 구속 조건은 표준에 따라 정의해야합니다. 암기 할 필요가 없으며 너무 오래 생각할 필요가 없습니다. 요컨대, 당신은 더 빨리 일합니다.
먼저 데이터베이스와 테이블을 작성하고 열을 수동으로 추가하십시오. 기본 키가 될 열 이 열을 마우스 오른쪽 단추로 클릭하고 기본 키를 설정하고 기본 키의 시드 값을 설정해야합니다.
테이블에서 복합 고유 키를 만들려면
ALTER TABLE [TableName] ADD UNIQUE ([Column1], [Column2], [column3]);
CREATE TABLE UserGroup
(
[User_Id] INT Foreign Key,
[Group_Id] INT foreign key,
PRIMARY KEY ([User_Id], [Group_Id])
)
참고URL : https://stackoverflow.com/questions/3922337/how-to-create-composite-primary-key-in-sql-server-2008
'Programming' 카테고리의 다른 글
WPF 텍스트 줄 바꿈 vs. WrapWithOverflow (0) | 2020.06.02 |
---|---|
프래그먼트 내의 onCreateOptionsMenu (0) | 2020.06.02 |
리스트 변환 (0) | 2020.06.02 |
PHP-파일을 서버의 다른 폴더로 이동 (0) | 2020.06.02 |
iPhone에서 최초 앱 실행을 감지하는 방법 (0) | 2020.06.02 |