728x90
MS-SQL 테이블 생성 시 컬럼의 [ID 사양]을 "예"로 체크한 후 [ID증가 값, ID초기값]을 생성하면 이후부터 테이블의 데이터 로우가 생성될 때마다 해당 컬럼의 값이 자동으로 증감하여 생성된다.
해당 컬럼의 경우 INSERT 할 때 별도의 값을 지정하여 넣을 수 없다는 것은 참고하자.
위와 같이 테이블 설정 한 이후부터는 테이블의 모든 데이터를 생성하더라도 해당 컬럼은 1부터 시작되는 것이 아닌 지워지기 전의 ID 다음 값으로 데이터가 생성된다.
해당 값을 1부터 초기화 하기 위해서는 다음과 같이 작업해야 한다.
--============================================
-- 1. 현재 테이블의 ID 값 확인
-- DBCC CHECKIDENT(테이블명, NORESEED)
--============================================
DBCC CHECKIDENT(COR_DataImport_M, NORESEED)
--============================================
-- 1. 현재 컬럼의 ID 값 초기화 (IDENTITY 값 초기화)
-- DBCC CHECKIDENT(테이블명, reseed, 초기화값)
-- 초기화값 : 0으로 설정해야 1부터 생성 됨.
--============================================
DBCC CHECKIDENT(COR_DataImport_M, reseed, 0)
--============================================
-- 2. ID값과 컬럼 값이 일치되도록 아래 구문 실행
-- DBCC CHECKIDENT(테이블명, reseed)
--============================================
DBCC CHECKIDENT(COR_DataImport_M, reseed )
위와 같이 실행하면 테이블의 신규 데이터 입력시 초기화된 값부터 생성된다.
728x90
'개발및업무 > SQL' 카테고리의 다른 글
[MS-SQL] DB LOCK - "KILLED/ROLLBACK" 상태 관련 (0) | 2021.11.04 |
---|---|
[SQLite] SQLite DB의 Table 데이터 CSV 파일 생성 방법 (0) | 2021.09.27 |
[MS-SQL]DATABASE TABLE 별 ROW COUNT 확인 (0) | 2017.03.17 |
[MS-SQL]기존 테이블 백업 테이블 만들기 (0) | 2011.11.03 |
[MS-SQL]함수를 테이블로 사용하는 방법 (0) | 2011.11.03 |