ID 열

2011-01-26 6 views
2

INT 데이터 형식의 최대 한도 인 에 도달했기 때문에 다중 삭제 기능이있는 ID 열이 삭제되었습니다. 모든 데이터를 자르지 않고 삭제 된 위치에 레코드를 삽입하려면 어떻게해야합니까?ID 열

답변

5

- 당신이 INT 데이터 범위의 끝에 도달 한 경우, 당신은 BIGINTID 열을 변경해야합니다.

IDENTITY 속성이 유지됩니다
ALTER TABLE dbo.YourTable 
    ALTER COLUMN YourIDColumn BIGINT 

는 - 지금 당신은 앞으로 향후 몇 달/년 동안 사용할 수있는 추가 ID 값을 많이 가지고 있어요!

3

많은 작업처럼 보입니다. 테이블 (및 관련 테이블)의 기본 키를 int에서 bigint으로 변경하는 것이 가장 좋은 이유는 무엇입니까?

int은 2,147,483,647의 최대 값을 제공합니다.

는 최대 값 9,223,372,036854775807을 제공합니다. 당신은 사용되지 않는 IDENTITY 값을 "재활용"할 수

4

실례 ...

1에서 1을 시작 했습니까? 그렇다면 ID를 -1, -1로 변경하십시오. 테이블 재 작성이 필요하지만 bigint로 변경하는 것보다 쉽습니다. 그리고 또 20 억 개의 ID를 제공합니다.

다음 bigint 마이그레이션을 계획하십시오.

관련 문제