KB2929832-sửa lỗi: độ chính xác thập phân không đúng khi bạn tính toán dựa trên kích cỡ của quy mô trong SQL Server 2012 hoặc SQL Server 2014 MDS

Triệu chứng

Giả định rằng bạn tạo một thuộc tính số trong Microsoft SQL Server 2012 hoặc SQL Server 2014 Master Data Services (MDS) bằng cách sử dụng dịch vụ web MDS. Khi bạn tìm cách xác định thêm chữ số vào bên phải của dấu thập phân, độ chính xác không đúng được tính. Ví dụ: khi bạn tìm cách tạo một thuộc tính thập phân có 16 chữ số chính xác bằng cách thực hiện:

MetadataAttribute newAttribute = new MetadataAttribute(); newAttribute.DataType = AttributeDataType.Number; newAttribute.DataTypeInformation = 16;

Cột được tạo có tỷ lệ chính xác 16 và độ chính xác sai số của 22.

Nguyên nhân

Sự cố xảy ra do một thủ tục được lưu trữ trong MDS nội bộ sử dụng tính toán sai chính xác khi bạn tạo thuộc tính. Độ chính xác được tính toán như 38 trừ Thang đo, vốn không đúng.

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:

Cách giải quyết

Để giải quyết vấn đề này, hãy sử dụng các phương pháp sau được đánh giá cao về tình huống của bạn:

  • Đối với SQL Server 2014, hãy áp dụng bản sửa lỗi.

  • Đối với SQL Server 2012, thay đổi quy trình được lưu trữ để sử dụng giá trị hằng số của 38 (tối đa được phép SQL Server 2012) thay vì trừ tỉ lệ (@DataTypeInformation, v.v.) từ độ chính xác.

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".

Bạn cần thêm trợ giúp?

Phát triển các kỹ năng của bạn
Khám phá nội dung đào tạo
Sở hữu tính năng mới đầu tiên
Tham gia Microsoft dùng nội bộ

Thông tin này có hữu ích không?

Cảm ơn phản hồi của bạn!

Cảm ơn bạn đã phản hồi! Để trợ giúp tốt hơn, có lẽ chúng tôi sẽ kết nối bạn với một trong những nhân viên hỗ trợ Office của chúng tôi.

×