2019. 8. 27. 15:43
반응형

MS SQL Server에 예를 들어서 다음과 같은 테이블이 있다.

create table Example (
  Id int primary key identity(1,1),
  Name nvarchar(40) not null
);

 

이 경우 테이블에 insert 할 경우 다음과 같을 것이다.

insert into Example(Name) values ('Tom'), ('Taylor');

테이블을 조회해보면 다음과 같이 나올 것이다.

1 Tom

2 Taylor

 

 

그런데 Id를 정해서 입력해야할 경우가 있다.

그럴 경우 SET IDENTITY_INSERT를 이용하면 된다.

다음과 같이 할 수 있다.

 

SET IDENTITY_INSERT Example ON;
insert into Example (Id, Name) values (4, 'Ted'), (8, 'Michael');
SET IDENTITY_INSERT Example OFF;

 

다시 조회해보면 다음과 같이 나온다.

1 Tom

2 Taylor

4 Ted

8 Michael

 

여기서 다시 한 명 더 추가하면 어떻게 될까?

나도 잘 몰라서 한번 더 넣어봤다.

 

insert into Example(Name) values ('Peter');

다시 조회해보면 그 다음 사람은 9번부터 들어가는 것을 볼 수 있다.

반응형