--다음 예에서는 AdventureWorks 데이터베이스에 있는 Employee 테이블의 현재 ID 값을 1로 설정합니다. USE AdventureWorks; GO DBCC CHECKIDENT ("HumanResources.Employee", RESEED, 1); GO
DBCC CHECKIDENT ( table_name, NORESEED )
현재 ID 값을 다시 설정하지 않습니다. DBCC CHECKIDENT는 ID 열의 현재 ID 값과 현재 최대값을 반환합니다. 두 값이 같지 않으면 ID 값을 다시 설정하여 잠재적 오류를 방지하고 값이 간격 없이 순서대로 지정되도록 해야 합니다.
DBCC CHECKIDENT ( table_name)
또는
DBCC CHECKIDENT ( table_name, RESEED )
테이블의 현재 ID 값이 ID 열에 저장된 최대 ID 값보다 작을 경우 ID 열의 최대값을 사용하여 다시 설정됩니다.
DBCC CHECKIDENT ( table_name, RESEED, new_reseed_value )
현재 ID 값이 new_reseed_value로 설정됩니다. 테이블이 생성된 후 삽입된 행이 없는 경우에는 DBCC CHECKIDENT를 실행한 후에 처음 삽입되는 행이 new_reseed_value를 ID로 사용하게 됩니다. 그렇지 않으면 다음에 삽입된 행은 new_reseed_value + 현재 증분 값을 사용합니다.
테이블이 비어 있지 않은 경우 ID 값을 ID 열의 최대값보다 작은 숫자로 설정하면 다음 조건 중 하나가 발생할 수 있습니다.
- ID 열에 PRIMARY KEY 또는 UNIQUE 제약 조건이 있으면 생성된 ID 값이 기존 값과 충돌하므로 나중에 테이블에 삽입 작업을 수행할 때 오류 메시지 2627이 생성됩니다.
- PRIMARY KEY 또는 UNIQUE 제약 조건이 없으면 나중에 삽입 작업을 수행할 때 중복 ID 값이 생성됩니다.
'MS SQL' 카테고리의 다른 글
주의 대상 DB 복구 방법 (0) | 2013.02.27 |
---|---|
자주사용하는 T-SQL (0) | 2010.12.21 |
MS sql LOG 파일정리 (0) | 2010.10.15 |
유용한 MS-SQL 함수.. 추가중 (0) | 2010.05.14 |
서브쿼리이용하여 전체갯수 구하기 (0) | 2010.04.17 |
초간단 MS SQL 에서 TRY CATCH 사용하기 (0) | 2010.04.16 |
테이블을 다시 만들어야 하는 변경 내용 저장 사용 안 함 (0) | 2010.01.21 |
간단한 저장프로시저 예제 (0) | 2010.01.03 |
[CURSOR ]커서 사용하기 (0) | 2010.01.03 |
[ 첫글자 검색 ]레코드들 중에 특수문자 와 한글을 제거,검색 (0) | 2010.01.03 |