Tôi có một tình huống lạ với một số bảng trong cơ sở dữ liệu của tôi bắt đầu ID của nó từ 0, mặc dù TABLE CREATE có IDENTITY (1,1). Điều này là như vậy đối với một số bảng, nhưng không phải cho những người khác. Nó đã hoạt động cho đến ngày hôm nay.Giá trị cột nhận dạng máy chủ SQL bắt đầu bằng 0 thay vì 1
Tôi đã thử đặt lại cột sắc:
DBCC CHECKIDENT (SyncSession, reseed, 0);
Nhưng kỷ lục mới bắt đầu với 0. Tôi đã cố gắng làm điều này cho tất cả các bảng, nhưng một số vẫn bắt đầu từ 0 và một số từ 1.
Bất kỳ con trỏ nào?
(Tôi đang sử dụng SQL Server Express 2005 với dịch vụ nâng cao)
Có điều gì đó sai với thiết kế của bạn nếu bạn liên tục nhập lại giá trị. Và tại sao nó lại quan trọng nếu nó bắt đầu bằng 0 hoặc 1?Đó là một autoincrement, nó không quan trọng những gì giá trị chỉ là nó là duy nhất và tự động được giao. – HLGEM
Năm năm muộn cho bữa tiệc nhưng - như tôi - OP có thể vừa phát triển và thử nghiệm với một bộ dữ liệu đã biết. Không nhất thiết phải bất cứ điều gì sai với thiết kế. – GeoffM
@ HLGEM - đây là lý do tại sao nó phát triển. nếu bạn đang cư trú một đối tượng mã từ một bản ghi cơ sở dữ liệu, đối tượng sẽ khởi tạo với một thuộc tính "ID" là 0. Sau đó, nếu populating thành công nó sẽ là một cái gì đó khác với mặc định 0. 0 có thể cho biết không tìm thấy bản ghi hoặc một đối tượng "mới". – nuander