본문 바로가기
Programming/DataBase

[MSSQL] Cannot insert explicit value for identity column in table

by 막이 2013. 2. 26.

Cannot insert explicit value for identity column in table 

 
insert 시 위와 같은 오류가 났다.
왜 그럴까?


- 원인 
idenity로 1씩 증가되도록 되어 있는 테이블에 강제로 값을 입력하려 했기 때문이라는데..

DB에 바로 Insert 말고 꼭 웹을 통해 관리자 권한으로만 데이터를 넣으 라는건가?

내가 이래서 외산 솔루션을 싫어하는거야 ㅠㅠ

 

 

- 처리방법
insert 전에 아래 실행..
> SET IDENTITY_INSERT table명 ON;
insert가 모두 끝난뒤 아래 실행..

> SET IDENTITY_INSERT table명 OFF; 

 

발급되는 ID 일련번호가 연번이어야 하므로 일부로 프로그래밍 할때 설정해 놓은듯,

중간에 번호가 비거나 하면 무슨 일이 생기는건가

갑자기 궁금해지네,,

그러나 잘못되면 장애가 나므로 궁금증만 가지고 있어야지

앞으로는 꼭 국산 소프트웨어를 이용합시다!!

 

 

MSSQL datetime 형식을 insert나 update할때

ex) insert into charlie (id, name, maketime) values (800808, charlie, convert(datetime, '2013-01-31 13:40:40'));