답변
테이블에서 열을 삭제하거나 ID를 높은 수로 변경하면 이러한 상황이 발생합니다.
신원을 재설정 할 수는 있지만 그럴만 한 이유가 없으면 (좋은 이유는 대부분의 테이블 내용을 삭제할 수 있습니다.) 그렇게하지 않는 것이 좋습니다. 정체성을 다시 시드하는 방법
일부 세부 사항은 here 찾을 수 있습니다 new_reseed_value이 특정 사건에 대한 57 일 곳
그리고 그것을 사용하는 방법은
DBCC CHECKIDENT (table_name, RESEED, new_reseed_value)
이다 (신원이 시작됩니다 즉, 57 세부터). 그러나 ID가 57보다 큰 테이블에 항목이 있으면 실패합니다.
다른 방법으로 사용할 수 있습니다
SET IDENTITY_INSERT Table_Name ON
INSERT INTO Table_Name(ID, Other_Columns,You_Are_Inserting,You_Must_Specify_All_Of_Them)
VALUES (57, 'SomeData','OtherData',...)
SET IDENTITY_INSERT Table_Name OFF
이것은 당신이 시드없이 구체적으로 식별 컬럼 값을 지정하여 삽입 할 수 있습니다. 또한 현재 ID보다 높은 값을 삽입하지 마십시오. 삽입시 오류가 발생합니다.
2012 년 인스턴스를 다시 시작하기 만하면 최대 1,000 와이드까지 '성능 최적화'라고하는 간격이 생길 수 있으며 데이터베이스 외부에서 ID를 노출하지 않는 또 다른 이유가 있습니다. 한 가지 더 : 테이블에 ID가 더 큰 값을 다시 시드하면 RESEED가 실패하지 않습니다. 컬럼에 PK/UQ 제약 조건이없는 한 ID는 복제본에도 상당히 만족합니다 (대개 OK ...입니다.) 직접 시도하십시오. – dean
예상되는 동작은 IDENTITY
입니다. 연속적인 숫자를 원한다면 새로운 행을 삽입 할 때마다 ID 값이 증가하므로 마지막 행을 삭제하면 이 아닌이 감소하지 않으며 트랜잭션을 시작하면 감소합니다 , 새 행을 삽입 한 다음 트랜잭션을 롤백하십시오.
DBCC CHECKIDENT
명령을 사용하여 ID 값을 변경할 수 있지만 실제로는 비표준 열로 변경하고 자신의 코드에서 값을 관리해야합니다.
특정 테이블에 대해 Identity_insert을 켜야합니다.
SET IDENTITY_INSERT YourTableName ON
Insert into YourTableName (IDField,rest of the column names)
values (57, rest of the column values)
SET IDENTITY_INSERT YourTableNAme OFF
- 1. DataGridView에 새 행을 추가 할 때 오류가 발생했습니다.
- 2. 새 행을 추가 할 때 행을 줄이고 행을 제거 할 때 행의 합계가 줄어 듭니다.
- 3. Null 값을 갖는 행을 생략하는 피벗 테이블
- 4. 수십억 개의 행을 가진 열 데이터베이스에 새 열 추가
- 5. Gridview에서 새 행을 추가 할 때 드롭 다운 목록을 바인딩합니다.
- 6. DataGridView에서 DefaultValuesNeeded를 사용할 때 새 행을 추가 할 수 없습니다.
- 7. LINQ 오류 추가 열 값을 검색 할 때 잘못된 열
- 8. 새 동적 행을 추가 할 때 Checkbox.checked가 변경됩니다.
- 9. 프로그래밍 방식으로 새 행을 추가 할 때 gridview 조정 row
- 10. 양식에 새 행을 추가 할 때 애니메이션 추가하기
- 11. Entity Framework에서 DB에 새 행을 추가 할 때 예외가 발생했습니다.
- 12. 테이블에 새 행을 추가 할 때 가로 채기
- 13. 새 행을 추가 할 때 DataTable에 대한 유효성 검사
- 14. 새 행을 추가 할 때 Primefaces datatable 헤더가 중복됩니다.
- 15. 동적으로 행을 추가 할 때 IE가 테이블 열 크기를 조정합니다.
- 16. 새 DataRow에 열 추가
- 17. 사용자가 데이터베이스에 추가 할 새 행을 편집 할 때 Datagridview의 편집 할 수없는 기본값
- 18. 새 열 추가 vs 행 효율성 추가
- 19. 행을 추가 할 때 Datepicker가 작동하지 않습니다.
- 20. JQuery는 행을 추가 할 때 ID와 값을 텍스트 상자에 추가합니다.
- 21. 나는 업데이트하려고하지만 새 행을 추가
- 22. 런타임에 새 열 추가
- 23. 대량 삽입 슬릭 3.x를 수행 할 때 열 값을 생략하는 방법은 무엇입니까?
- 24. 새 행을 추가 할 때 javaFX 테이블 뷰가 테이블 크래시를 업데이트 할 수 없음
- 25. SQLite DB의 식별 열 최대 값
- 26. 행을 제거 할 때 열 계산 업데이트
- 27. MYSQL : 새 행 값을 추가 할 때 알림
- 28. 삭제 된 열 식별
- 29. xtragrid에 새 행 추가
- 30. 열 값을 기준으로 행을 새 통합 문서에 복사
당신이 id 컬럼을 다시 시드 할 필요가 ... http://blog.sqlauthority.com/2007/03/15/sql-server-dbcc-reseed-table-identity-value-reset-table- identity/ – Milen