Identity 가 지정되어있는 컬럼에 임의의 값을 넣으려고 하면 에러가 나면서 넣어지지 않는다
임의의 값을 넣기 위해선 다음과 같이 명시한다면 입력이 가능하다
SET IDENTITY_INSERT [대상 테이블] ON;
입력을 위해서는 INSERT절에 해당 컬럼을 명시적으로 선언해야 한다
INSERT INTO [대상 테이블]([컬럼2], [컬럼2], [컬럼3], [컬럼4]...) VALUES([값1], [값2], [값3], [값4]...); INSERT INTO [대상 테이블]([컬럼2], [컬럼2], [컬럼3], [컬럼4]...) SELECT [값1], [값2], [값3], [값4]... FROM ...;
입력 후에 다음과 같이 만들어 준다.
SET IDENTITY_INSERT [대상 테이블] OFF;
※주의사항 : 한번에 한 테이블에만 설정이 가능 하기 때문에 여러 테이블 대상일 경우 하나씩 설정 해야 함
'프로그래밍 > MSSQL\정보' 카테고리의 다른 글
[MSSQL] Parallel과 Sort 가 동시에 있을 때 발생하는 문제 (0) | 2012.10.05 |
---|---|
[MSSQL] Cross Apply (0) | 2012.09.11 |
[MSSQL] sqlcmd 응용 (0) | 2012.05.28 |
[MSSQL] 정규식으로 특수문자 유무(문자열 패턴) 검사 (0) | 2012.05.04 |
[MSSQL] 원하는 순서로 정렬된 Identity 컬럼 추가 (0) | 2012.04.24 |