Triệu chứng
Giả định rằng bạn có một bảng chứa cột kiểu dữ liệu ngày và bạn đã thực hiện chỉ mục Cửa hàng cột liên cụm (ccsi) trên bảng này trong Microsoft SQL Server 2014. Khi bạn cố gắng truy vấn bảng bằng cách sử dụng kiểu dữ liệu ngày làm vòng loại, dữ liệu không chính xác có thể được trả về. Ví dụ:create table tab2(c1 int, c2 date, c3 varchar(10)) CREATE CLUSTERED COLUMNSTORE INDEX [CCI_tab2] ON [tab2] WITH (DROP_EXISTING = OFF)GO select *FROM tab2 S -- Table with clustered columnstore indexWHERE S.c2 = @date -- variable of Date datatype
Giải pháp
Thông tin về gói dịch vụ
Để giải quyết sự cố này, bạn có thể lấy gói dịch vụ 1 cho SQL Server 2014.
Để biết thêm thông tin về SQL Server 2014 gói dịch vụ 1 (SP1), hãy xem các lỗi đã được khắc phục trong SQL server 2014 Service Pack 1.
Thông tin Cập Nhật tích lũy
Vấn đề này lần đầu tiên đã được khắc phục trong bản Cập Nhật tích lũy SQL Server sau đây.
Mỗi bản Cập Nhật tích lũy mới cho SQL Server chứa tất cả các hotfix và tất cả các bản sửa lỗi bảo mật đã được đưa vào bản Cập Nhật tích lũy trước đó. Kiểm tra các bản Cập Nhật tích lũy mới nhất cho SQL Server:
Thông tin Bổ sung
Sử dụng mã sau đây để tái tạo vấn đề này:create table tab1(c1 int, c2 date) insert into tab1values (1 , '2000-01-01') CREATE NONCLUSTERED INDEX [idxtab1c2] ON tab1( c2 ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) create table tab2(c1 int, c2 date, c3 varchar(10)) insert into tab2values (1, '2000-01-01', 'test') CREATE CLUSTERED COLUMNSTORE INDEX [CCI_tab2] ON [tab2] WITH (DROP_EXISTING = OFF)GO create table t([runId] int not null, [scalingFactor] float not null) -- REPRO QUERY. Below batch is expected to return a row but we don’t get ittruncate table tDECLARE @date DATE, @numDates INT INSERT INTO t VALUES(1, 1)DECLARE @date DATE, @numDates INTSELECT @date = max(R.c2) , @numDates = COUNT(distinct R.c2)FROM tab1 R INNER JOIN t D ON R.c1 = D.runId select *FROM tab2 S -- CCIWHERE S.c2 = @date
Trạng thái
Microsoft đã xác nhận đây là sự cố trong các sản phẩm của Microsoft được liệt kê trong phần "Áp dụng cho".