아이덴티티_INSERT가 OFF로 설정되었습니다. - 어떻게 켜시겠습니까?
삭제된 파일의 ID를 저장하는 삭제된 파일 아카이브 데이터베이스가 있습니다.관리자가 파일을 복원할 수 있도록 하고 싶습니다(또한 파일 링크용 ID도 같음).identity_insert를 테이블 전체에서 삭제하는 것은 바람직하지 않습니다.하나의 인크리먼트가 효과적이기 때문입니다.에의 삽입으로TBL_Content
스토어 프로시저 이런 게 있어요
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
SET IDENTITY_INSERT tbl_content ON
GO
ALTER procedure [dbo].[spInsertDeletedIntoTBLContent]
@ContentID int,
...insert command...
SET IDENTITY_INSERT tbl_content OFF
하지만 동일한 오류가 계속 발생합니다.
ID_인 경우 'TBL_Content' 테이블의 ID 열에 대한 명시적 값을 삽입할 수 없습니다.INSERT가 OFF로 설정되어 있습니다.
도움이 필요하신가요?
저장 프로시저 내에서 ID 삽입을 on으로 설정해야 합니까?저장 프로시저를 변경할 때만 설정되며 실제로 호출할 때는 설정되지 않습니다.시험:
ALTER procedure [dbo].[spInsertDeletedIntoTBLContent]
@ContentID int,
SET IDENTITY_INSERT tbl_content ON
...insert command...
SET IDENTITY_INSERT tbl_content OFF
GO
나는 그것이 단일 질의 일괄 처리로 이루어져야 한다고 생각한다.기본적으로 GO 스테이트먼트가 명령어를 여러 배치로 분할하고 있기 때문에 문제가 발생합니다.다음과 같이 변경합니다.
SET IDENTITY_INSERT tbl_content ON
/* GO */
...insert command...
SET IDENTITY_INSERT tbl_content OFF
GO
아이덴티티를 설정해야 하는 거 아니야?ON, 레코드 삽입 후 다시 끄시겠습니까?
다음과 같이 합니다.
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
SET IDENTITY_INSERT tbl_content ON
GO
ALTER procedure [dbo].[spInsertDeletedIntoTBLContent]
@ContentID int,
SET IDENTITY_INSERT tbl_content ON
...insert command...
SET IDENTITY_INSERT tbl_content OFF
상기시키는 것
SQL Server는 하나의 테이블만 ID_를 가질 수 있습니다.INSERT 속성이 ON으로 설정되었습니다.
이것은 동작하지 않습니다.
SET IDENTITY_INSERT TableA ON
SET IDENTITY_INSERT TableB ON
... INSERT ON TableA ...
... INSERT ON TableB ...
SET IDENTITY_INSERT TableA OFF
SET IDENTITY_INSERT TableB OFF
대신:
SET IDENTITY_INSERT TableA ON
... INSERT ON TableA ...
SET IDENTITY_INSERT TableA OFF
SET IDENTITY_INSERT TableB ON
... INSERT ON TableB ...
SET IDENTITY_INSERT TableB OFF
쿼리 위에 이 행을 추가합니다.
SET IDENTITY_INSERT tbl_content ON
참고 자료: http://technet.microsoft.com/en-us/library/aa259221%28v=sql.80%29.aspx
내 테이블 이름은Genre
의 3열과 함께Id
,Name
그리고.SortOrder
사용한 코드는 다음과 같습니다.
SET IDENTITY_INSERT Genre ON
INSERT INTO Genre(Id, Name, SortOrder)VALUES (12,'Moody Blues', 20)
세트도 추가
SET IDENTITY_INSERT Genre ON
INSERT INTO Genre(Id, Name, SortOrder)VALUES (12,'Moody Blues', 20)
SET IDENTITY_INSERT Genre OFF
두 개의 다른 테이블이 있었는데 첫 번째 테이블은 정상적으로 동작하지만 두 번째 테이블은 ID 삽입에 대해 이 예외가 발생합니다.문제는 테이블이 위조 키로 입력되지 않은 필드를 가지고 있다는 것입니다.
언급URL : https://stackoverflow.com/questions/3112579/identity-insert-is-set-to-off-how-to-turn-it-on
'programing' 카테고리의 다른 글
Django에서 여러 개체를 ManyToMany 관계에 한 번에 추가하는 방법 (0) | 2023.04.19 |
---|---|
XAML Designer가 표시되지 않음 (0) | 2023.04.19 |
Pip - 시작 관리자에서 치명적인 오류: ''을(를) 사용하여 프로세스를 만들 수 없습니다. (0) | 2023.04.19 |
"git merge - s our"의 "they" 버전이 있습니까? (0) | 2023.04.19 |
먼저 발생한 숫자의 행 색인을 찾다 (0) | 2023.04.19 |