này MSDN page trạng thái:Tại sao cột hàng tuần có thể vô hiệu hóa tương đương ngữ nghĩa với một varbinary (8)?
Một cột rowversion nonnullable là ngữ nghĩa tương đương với một nhị phân (8) cột. Cột hàng tuần có thể vô hiệu hóa là ngữ nghĩa tương đương với cột varbinary (8).
Cho rằng cột hàng tuần không thể so sánh được ngữ nghĩa tương đương với cột nhị phân (8), tại sao cột hàng tuần có thể tương đương ngữ nghĩa với cột varbinary (8) chứ không phải cột nhị phân không thể dùng được (8)?
Điều này có nghĩa là cột hàng tuần có thể vô hiệu hóa không tương đương ngữ nghĩa ngữ nghĩa với cột nhị phân không thể (8) không?
Ví dụ cụ thể của tôi là tôi sẽ có một bảng chứa các bản sao của các hàng từ các bảng khác. Một số bảng nguồn có một rowversion và những người khác thì không. Do đó, cột "rowversion" trong bảng của tôi phải chấp nhận giá trị null. Tôi muốn hiểu tại sao (hoặc nếu) cột nên được varbinary (8) null thay vì nhị phân (8) null.
@Andomar Tôi đã cập nhật câu hỏi của mình để giải thích lý do tôi muốn biết. –
Tuyệt, bây giờ tốt hơn. Không thể rút lại một cuộc bỏ phiếu gần. – Andomar
Một cột kiểu 'nhị phân (8)' sẽ ** luôn luôn ** chứa 8 byte dung lượng lưu trữ - bất kể những gì được lưu trữ bên trong nó - ngay cả 'NULL'. Một phiên bản nullable của nó - 'varbinary (8)' - tuy nhiên sẽ chỉ chiếm nhiều không gian thực sự cần thiết (cộng thêm một số chi phí). –