반응형
테이블 전체 및 컬럼을 다른 테이블로 복사 INSERT 방법
SELECT INTO
대상테이블을 신규로 생성을 한 후 INSERT 실행
SELECT 컬럼명 INTO 대상테이블 FROM 원본테이블 WHERE 조건식
예) SELECT * INTO TB_COLOR_TEMP FROM TB_COLOR WHERE AREA>1000
INSERT INTO
원본테이블의 SELECT 데이터를 대상 테이블로 INSERT 실행
INSERT INTO 대상테이블 SELECT * FROM 원본테이블 WHERE 조건식
예) INSERT INTO TB_COLOR_TEMP SELECT * FROM TB_COLOR WHERE AREA>1000
IDENTITY 컬럼에 INSERT 방법
IDENTITY 자동증가 컬럼으로 INSERT 하려고 하면 오류가 발생을 하며 INSERT 가 되지 않는다.
오류 메시지: 테이블 'TEST_TT'에 있는 ID 열의 명시적 값은 열 목록이 사용되고 IDENTITY_INSERT가 ON일 때만 지정할 수 있습니다.
IDENTITY 컬럼에 데이터를 INSERT 하기 위해서는 IDENTITY_INSERT 설정을 ON 로 하고 INSERT 를 해야한다. INSERT 가 완료한 후에는 다시 OFF 로 변경해준다.
SET IDENTITY_INSERT TEST_TT ON;
INSERT INTO TEST_TT (IDX, VAL) VALUES(1, '1')
SET IDENTITY_INSERT TEST_TT Off;
* IDENTITY컬럼에 데이터 등록 후에는 SEED 값이 달라질수 있기 때문에 현재 SEED 값을 확인 후 필요시 변경해준다.
-- TEST_TT 테이블 현재 SEED 확인
DBCC CHECKIDENT (TEST_TT , NORESEED)
-- TEST_TT 테이블의 SEED 값을 100 으로 변경 (변경 후 INSERT 되는 값은 101이 된다.)
DBCC CHECKIDENT (TEST_TT , RESEED, 100)
반응형
'Database > ms-sql' 카테고리의 다른 글
[MS-SQL] 시스템 변수 - @@ERROR, @@ROWCOUNT (0) | 2020.12.21 |
---|---|
[MS-SQL] ROUND, CEILING, FLOOR(반올림, 올림, 버림) 1, 10 의 자리 올림(버림) (2) | 2020.11.26 |
[MS-SQL] 문자열 분리 Split 함수(사용자 함수) (1) | 2020.11.10 |
[MS-SQL] 테이블, 컬럼 설명 추가, 수정 하기(SP_ADDEXTENDEDPROPERTY, SP_UPDATEEXTENDEDPROPERTY) (2) | 2020.11.04 |
[MS-SQL] 테이블 및 컬럼 설명, 사용자 프로시져(파라미터 만들기) (0) | 2020.11.04 |