2011-07-06 2 views
2

나는이 스크립트를 실행하려고 :신원 삽입 문제

SET IDENTITY_INSERT dbo.Message ON 
INSERT INTO dbo.Message 
SELECT (Values I want to insert) 

을하고 내가 할 때 테이블 'dbo.Message을'의 ID 열에 명시 적 값에만 지정할 수 있습니다 * 내가 여전히 오류 를 얻을 수 열 목록이 사용되고 IDENTITY_INSERT가 ON 일 때 *

내가 뭘 잘못하고 있니?

답변

3

오류 키는 "열 목록 사용시"입니다. 원하는 항목 :

SET IDENTITY_INSERT dbo.Message ON 
INSERT INTO dbo.Message (column1, column2, ...) -- Added column list here 
SELECT (Values I want to insert) 
+2

기억 : SET IDENTITY_INSERT dbo.Message OFF를! –

2

오류 메시지와 마찬가지로 수행해야합니다. SELECT * 작동하지 않습니다 - 당신은 INSERT 줄 끝에서 필드 목록을해야하고, 당신이 SELECT 당신의 필드 이름을 지정해야합니다

INSERT INTO dbo.Message 
(col1, col2, col3, col4) 
SELECT Col1, col2, col3, col4 
FROM OtherTable 

: 같은 코드를 포맷합니다.

0

Insert Statement와 select 절에서 모두 Name 열을 모두 언급해야합니다. 이런 것이 있습니다.

TBL 에 삽입 ( [COL1, [COL2] 는) SELECT [COL1, [COL2]