이 내용은 2011년 6월 현재 SQL2011(코드명 Denali) Beta를 기준으로 작성 되었으며 SQL2011(코드명 Denali)
공식버전(RTM) 발표까지 꾸준히 업데이트 예정입니다.
아울러, 현재 Beta버전이지만 강좌를 따라해 보시는데 아무 문제 없으실거에요.
도움 되시길
바랍니다.
==================================================================================================
안녕하세요. 이스트럭(강동운)입니다.
오늘의 주제는 DML 중에서 INSERT 항목.. 그 중 identity에 대해서 알아보도록 하겠습니다.
이와 관련해서 임시 테이블을 생성해보도록 하겠습니다.
회원(회원번호, 회원아이디, 회원이름, 회원나이, 회원지역)
저번과 다른 부분은 MemberIDX에 IDENTITY(시작값, 증가값) 라는 속성을 부여했습니다.
테이블에 IDENTITY 속성이 있는 컬럼을 두개이상 만드는 경우에는 아래와 같은 에러가 발생합니다.
따라서 테이블에 IDENTITY 속성은 반드시 하나만 존재할 수 있습니다.
아래와 같이 테이블을 만들어봅시다.
IF OBJECT_ID('MemberSelectIdentity') IS NOT NULL
DROP TABLE
MemberSelectIdentity
GO
CREATE TABLE
MemberSelectIdentity
(
MemberIDX INT IDENTITY(1,1) NOT NULL
,
MemberID VARCHAR(10)
, MemberName VARCHAR(20)
, MemberAge INT
,
MemberArea VARCHAR(4)
, CreateDate DATETIME
)
GO
테이블에 IDENTITY 속성이 있는 경우에는.. 기본적으로 DATA INSERT 시에 IDENTITY 속성을 가진 컬럼명을 제외해야합니다.
만약 함께 기술한다면 아래와 같은 에러가 발생하게 됩니다.
또한... 컬럼명을 생략한 경우에도 마찬가지겠지요~!
이제 컬럼명을 생략해서 넣어보도록 하겠습니다.
정상적으로 들어갔음을 확인할 수 있습니다.
하지만... 에러 내용들 처럼.. SET IDENTITY_INSERT 를 사용해서 MemberIDX에 원하는 값을 넣을 수 있습니다.
Link: SET IDENTITY_INSERT(Transact-SQL)
그렇다면 현재 IDENTITY 값은 알 수 없을까?? 또한 IDENTITY 값을 변경할 순 없을까?? 라는 의문을 가지게 됩니다.
이것은.. DBCC CHECKIDENT 를 통해 가능합니다.
Link: DBCC CHECKIDENT(Transact-SQL)
감사합니다. ^^
작성일자: 2011.05.24
[출처] SQLER.COM http://www.sqler.com/383049
SQL2011(코드명 Denali) 시리즈 강좌 리스트
[SQL2011강좌] 1. 코드명 Denali 설치
방법
[SQL2011강좌] 2. SSMS 접속 및
간단한 쿼리 실행
[SQL2011강좌] 3. SQL
Server 의 MDF, LDF 그리고 데이터베이스 생성하기
[SQL2011강좌] 4. DDL 1탄: 테이블 생성
[SQL2011강좌] 5. DDL 2탄: 쿼리를 이용한 테이블 컬럼 추가 및 삭제
[SQL2011강좌] 6. Primary key와 Unique
제약조건
[SQL2011강좌] 7. DML 1탄
INSERT
[SQL2011강좌] 8. DML 1탄
INSERT(identity 속성)
[SQL2011강좌] 9. Sequence
[SQL2011강좌] 10. pubs, northwind Database 예제 설치
[SQL2011강좌] 11. SELECT(단일 테이블)
[SQL2011강좌] 12. SELECT(JOIN)
[SQL2011강좌] 13. UPDATE, DELETE
절
[SQL2011강좌] 14. DISTINCT,
UNION, UNION ALL 키워드
[SQL2011강좌] 15. ORDER BY, GROUP BY, HAVING
[SQL2011강좌] 16. SubQuery(서브쿼리)
[SQL2011강좌] 17. 뷰에 대한 이해 및 생성, 수정,
삭제
[SQL2011강좌] 18. 저장 프로시저에 대한
이해, 생성, 수정, 삭제
[SQL2011강좌] 19.
인덱스에 대한 이해
[SQL2011강좌] 20.
클러스터드 인덱스와 넌 클러스터드 인덱스
[SQL2011강좌] 21. 트랜잭션에 대한이해
[SQL2011강좌] 22. 트랜잭션의 격리수준 4가지
[SQL2011강좌] 23. 잠금에 대한 이해
[SQL2011강좌] 24. 백업과 복구에 대한 이해(풀백업, 차등백업, 트랜잭션 로그 백업)
[SQL2011강좌] 25. 백업과 복구 전략
[SQL2011강좌] 26. 커서란?
SQL2011(코드명 Denali) 시리즈
동영상 강좌 리스트
[SQL2011 동영상 강좌] 1. 코드명 Denali 설치 방법
[SQL2011 동영상 강좌] 2.
SSMS 접속 및 간단한 쿼리 실행
[SQL2011 동영상 강좌] 3. SQL Server 의 MDF, LDF 그리고 데이터베이스
생성하기
[SQL2011 동영상 강좌] 4. DDL 1탄: 테이블 생성
[SQL2011 동영상 강좌] 5.
DDL 2탄: 쿼리를 이용한 테이블 컬럼 추가 및 삭제
[SQL2011 동영상 강좌] 6. Primary key와 Unique
제약조건
[SQL2011 동영상 강좌] 7. DML 1탄 INSERT
[SQL2011 동영상 강좌] 8.
DML 1탄 INSERT(identity 속성)
[SQL2011 동영상 강좌] 9. Sequence
[SQL2011 동영상 강좌] 10.
pubs, northwind Database 예제 설치
[SQL2011 동영상 강좌] 11. SELECT(단일 테이블)
[SQL2011 동영상 강좌] 12.
SELECT(JOIN)
[SQL2011 동영상 강좌] 13. UPDATE, DELETE 절
[SQL2011 동영상 강좌] 14.
DISTINCT, UNION, UNION ALL 키워드
[SQL2011 동영상 강좌] 15. ORDER BY, GROUP BY,
HAVING
[SQL2011 동영상 강좌] 16. SubQuery(서브쿼리)
[SQL2011 동영상 강좌] 17.
뷰에 대한 이해 및 생성, 수정, 삭제
[SQL2011 동영상 강좌] 18. 저장 프로시저에 대한 이해, 생성, 수정, 삭제
[SQL2011 동영상 강좌] 19.
인덱스에 대한 이해
[SQL2011 동영상 강좌] 20. 클러스터드 인덱스와 넌 클러스터드 인덱스
[SQL2011 동영상 강좌] 21.
트랜잭션에 대한이해
[SQL2011 동영상 강좌] 22. 트랜잭션의 격리수준 4가지
[SQL2011 동영상 강좌] 23.
잠금에 대한 이해
[SQL2011 동영상 강좌] 24. 백업과 복구에 대한 이해(풀백업, 차등백업, 트랜잭션 로그
백업)
[SQL2011
동영상 강좌] 25. 백업과 복구 전략
[SQL2011 동영상 강좌] 26. 커서란?
'프로그램&DB > MS-SQL' 카테고리의 다른 글
[MS-SQL2011강좌] 10. pubs, northwind Database 예제 설치 by 강동운님 (0) | 2011.08.23 |
---|---|
[MS-SQL2011강좌] 9. Sequence by 강동운님 (0) | 2011.08.23 |
[MS-SQL2011강좌] 7. DML 1탄 INSERT by 강동운님 (0) | 2011.08.23 |
[MS-SQL2011강좌] 6. Primary key와 Unique 제약조건 by 강동운님 (0) | 2011.08.23 |
[MS-SQL2011강좌] 5. DDL 2탄: 쿼리를 이용한 테이블 컬럼 추가 및 삭제 by 강동운님 (0) | 2011.08.23 |