IDENTITY 컬럼의 현재값 알기 및 수정
현재 값 알기
"DBCC CHECKIDENT('tableName')"
IDENTITY 컬럼의 마지막 값 강제 지정하기
IDENTITY 컬럼을 임의의 번호부터 시작시키기를 원할 수도 있다. 이때는 다음과 같이 써보자
"DBCC CHECKIDENT('tableName', RESEED, 10000)"
--> 그러면 다음에 tableName 테이블에 새로운 데이터가 삽입될 때는 10001번 부터 자동 증가된다.
현재 세션에서 삽입된 마지막 IDENTITY컬럼 값 얻기
현재 값 알기
"DBCC CHECKIDENT('tableName')"
IDENTITY 컬럼의 마지막 값 강제 지정하기
IDENTITY 컬럼을 임의의 번호부터 시작시키기를 원할 수도 있다. 이때는 다음과 같이 써보자
"DBCC CHECKIDENT('tableName', RESEED, 10000)"
--> 그러면 다음에 tableName 테이블에 새로운 데이터가 삽입될 때는 10001번 부터 자동 증가된다.
현재 세션에서 삽입된 마지막 IDENTITY컬럼 값 얻기
"SELECT @@IDENTITY"
[참조] 뇌를 자극하는 SQL Server 2005, P.365
IDENTITY 컬럼을 비활성화 시키고 데이터 강제 삽입하기
IDENTITY 컬럼을 비활성화 시키고 데이터 강제 삽입하기
IDENTITY_INSERT가 OFF로 설정되면 테이블 '이름' 열에 명시적 값을 삽입할 수 없습니다. 라는 에러가 발생하면
아래와 같이 실행해주면 됩니다. 아래와 같이 세팅하면 기존에 있던 번호를 지우고 동일한 번호로 추가한다던지,
삭제하여 빈 번호를 재사용 한다던지가 가능! 완전 편해 ㅠ.ㅠ
Ex)
SET IDENTITY_INSERT testTable ON;
insert into testTable (col1, col2) select coll1, coll2 from testTable2
SET IDENTITY_INSERT testTable OFF;
'프로그래밍 > MSSQL' 카테고리의 다른 글
MSSQL 분할뷰 사용 (4) | 2011.02.07 |
---|---|
MSSQL 외래키등 제약조건으로 인해 삽입이 안될때 잠시 제약을 꺼두자 (1) | 2011.02.07 |
MSSQL DB파일의 변경 (4) | 2011.02.07 |
MSSQL DB축소 관련 옵션 (2) | 2011.02.07 |
MSSQL 2005 - 파일그룹 생성 SQL 예제 (4) | 2011.02.07 |