tối đa được xác định bởi datatype, không phải bởi các sửa đổi IDENTITY
. Đối với cột INT
, bạn đã tìm ra mức tối đa. Nếu bạn cần loại dữ liệu có phạm vi rộng hơn, BIGINT
là lựa chọn hiển nhiên và có thể được đánh dấu là IDENTITY
.
TINYINT
: từ 0 đến 255
SMALLINT
: -32.768 qua 32767
INT
: -2147483648 2147483647 qua
BIGINT
: -9223372036854775808 qua 9223372036854775807
Tôi mong chờ một lỗi được nâng lên khi cố gắng chèn hàng sau khi đạt mức tối đa, khi triển khai IDENTITY
sẽ vẫn cố gắng tăng thêm với mỗi lần chèn.
Mặc dù có thể lưu trữ hàng vào một số kho lưu trữ dữ liệu khác và bắt đầu sử dụng lại số nhận dạng (DBCC CHECKIDENT (jobs, RESEED, 0)
sẽ đặt lại bộ đếm), nó không phải là thứ mà SQL Server cung cấp ngoài hộp. Bạn sẽ phải thực hiện logic cho chính mình, và hơn nữa bạn sẽ phải xem xét những loại rắc rối sử dụng lại định danh có thể mang đến cho ứng dụng của bạn. Ví dụ: đối với một ứng dụng web, các URL cũ có thể trỏ đến các tài liệu mới hoặc trả về lỗi 404 không?
Nguồn
2010-02-19 11:02:42
Câu trả lời này sẽ được cải thiện bằng liên kết đến nguồn tài liệu. –