KB2563924 - KHẮC PHỤC: Lỗi "Dòng giao thức dòng dữ liệu dạng bảng (TDS) đến không chính xác" khi hàm SQLPutData chèn giá trị SQL_NULL_DATA vào TVP trong SQL Server 2008 R2

Áp dụng cho
SQL Server 2008 R2

Microsoft phân phối các bản sửa lỗi Microsoft SQL Server 2008 R2 dưới dạng một tệp có thể tải xuống. Vì các bản sửa lỗi được tích lũy, mỗi bản phát hành mới đều chứa tất cả các bản sửa lỗi nóng và tất cả bản sửa lỗi bảo mật có trong bản phát hành bản sửa lỗi SQL Server 2008 R2 trước đó.

Triệu chứng

Hãy cân nhắc các trường hợp sau:

  • Bạn có một máy tính đang chạy Microsoft SQL Server 2008 R2.
  • Bạn chạy một ứng dụng máy khách sử dụng trình điều khiển ODBC của SQL Server 2008 R2 Native Client để liên kết một tham số có giá trị trên bảng làm cột dữ liệu khi thực thi.
  • Ứng dụng khách gọi hàm SQLPutData để thay đổi tham số giá trị bảng thành giá trị SQL_NULL_DATA .

Trong kịch bản này, ứng dụng khách không gọi hàm SQLPutData và bạn sẽ nhận được thông báo lỗi sau đây:

Lưu ý

[28000] - [Microsoft][SQL Server Native Client 10.0][SQL Server] Dòng giao thức luồng dữ liệu dạng bảng (TDS) đến không chính xác. Luồng đã kết thúc bất ngờ

      

Nguyên nhân

Sự cố này xảy ra vì trình điều khiển ODBC không gửi độ dài dữ liệu của giá trị SQL_NULL_DATA đến tham số có giá trị trong bảng.

Giải pháp

Để giải quyết sự cố này, hãy áp dụng bản sửa lỗi sau đây trên máy tính đã cài đặt SQL Server 2008 R2 Native Client.

Thông tin cập nhật tích lũy

SQL Server 2008 R2 Gói Dịch vụ 1

Bản sửa lỗi cho sự cố này được phát hành lần đầu trong Bản cập nhật tích lũy 1 cho SQL Server 2008 R2 Gói Dịch vụ 1. Để biết thêm thông tin về cách lấy gói cập nhật tích lũy này, hãy bấm vào số bài viết sau để xem bài viết trong Cơ sở Kiến thức Microsoft:

2544793 Gói Cập nhật Tích lũy 1 cho SQL Server 2008 R2 Gói Dịch vụ 1Lưu ý Vì các bản dựng được tích lũy, mỗi bản phát hành bản sửa lỗi mới đều chứa tất cả các bản hotfix và tất cả bản sửa lỗi bảo mật có trong bản phát hành bản sửa lỗi SQL Server 2008 R2 trước đó. Chúng tôi khuyên bạn nên cân nhắc áp dụng bản phát hành bản sửa lỗi gần đây nhất có chứa hotfix này. Để biết thêm thông tin, hãy bấm vào số bài viết sau đây để xem bài viết trong Cơ sở Kiến thức Microsoft:

2567616 Các bản dựng SQL Server 2008 R2 được phát hành sau khi SQL Server 2008 R2 Gói Dịch vụ 1 được phát hành

SQL Server 2008 R2

Bản sửa lỗi cho sự cố này được phát hành lần đầu trong Cập nhật Tích lũy 8. Để biết thêm thông tin về cách lấy gói cập nhật tích lũy này cho SQL Server 2008 R2, hãy bấm vào số bài viết sau để xem bài viết trong Cơ sở Kiến thức Microsoft:

2534352 Gói Cập nhật Tích lũy 8 cho SQL Server 2008 R2 Lưu ý Vì các bản dựng được tích lũy, mỗi bản phát hành bản sửa lỗi mới đều chứa tất cả các bản hotfix và tất cả bản sửa lỗi bảo mật được tích hợp trong bản phát hành bản sửa lỗi SQL Server 2008 R2 trước đó. Chúng tôi khuyên bạn nên cân nhắc áp dụng bản phát hành bản sửa lỗi gần đây nhất có chứa hotfix này. Để biết thêm thông tin, hãy bấm vào số bài viết sau đây để xem bài viết trong Cơ sở Kiến thức Microsoft:

981356 Các bản dựng SQL Server 2008 R2 được phát hành sau khi SQL Server 2008 R2 được phát hành

Trạng thái

Microsoft đã xác nhận rằng đây là sự cố trong các sản phẩm của Microsoft được liệt kê trong mục "áp dụng cho".

Tham khảo

Để biết thêm thông tin về hàm SQLPutData, hãy truy nhập vào trang web MSDN sau đây:

Thông tin chung về hàm SQLPutData
        
Để biết thêm thông tin về cách sử dụng cột dữ liệu khi thực hiện, hãy truy nhập trang web MSDN sau:

Cách sử dụng cột dữ liệu khi thực thi Để biết thêm thông tin về các tham số giá trị bảng, hãy truy cập trang web MSDN sau:

Thông tin chung về các tham số giá trị trong bảng
Để biết thêm thông tin về Mô hình Dịch vụ Gia tăng cho SQL Server, hãy bấm vào số bài viết sau để xem bài viết trong Cơ sở Kiến thức Microsoft:

935897 Mô hình Dịch vụ Gia tăng có sẵn từ nhóm SQL Server để cung cấp các bản sửa lỗi nóng cho các sự cố được báo cáo

Để biết thêm thông tin về sơ đồ đặt tên cho các bản cập nhật SQL Server, hãy bấm vào số bài viết sau đây để xem bài viết trong Cơ sở Kiến thức Microsoft:

822499 Giản đồ đặt tên mới cho các gói cập nhật phần mềm Microsoft SQL Server Để biết thêm thông tin về thuật ngữ cập nhật phần mềm, hãy bấm vào số bài viết sau để xem bài viết trong Cơ sở kiến thức Microsoft:

824684 Mô tả thuật ngữ chuẩn được sử dụng để miêu tả các bản cập nhật phần mềm của Microsoft