Áp dụng cho
SQL Server Compact 4.0

Triệu chứng

Giả định rằng bạn đã xác định khoảng Flush trong số giây tối đa trong chuỗi kết nối trước khi giao dịch cam kết bị xóa vào ổ đĩa trong Microsoft SQL Server Compact 4,0. Trong trường hợp này, các giao dịch cam kết có thể mất nhiều thời gian hơn khoảng tuôn ra để bị xóa vào đĩa hoặc thậm chí có thể không bị đỏ bừng vào ổ đĩa. Ngoài ra, mất dữ liệu xảy ra nếu có một chương trình chấm dứt bất thường.

Giải pháp

Các hotfix giải quyết sự cố này được bao gồm trong gói bản Cập Nhật theo yêu cầu hotfix cho gói dịch vụ SQL Server Compact 4,0 1. Để biết thêm thông tin về cách tải gói bản Cập Nhật hotfix này theo yêu cầu cho SQL Server Compact 4,0, hãy bấm số bài viết sau đây để xem bài viết trong cơ sở kiến thức Microsoft:

2960153 Gói Cập Nhật hotfix theo yêu cầu cho SQL Server Compact 4,0 Service Pack 1

Cách giải quyết

Để giải quyết vấn đề này, hãy sử dụng chế độ commit. ngay lập tức để xóa các thay đổi ngay lập tức thay vì dựa vào khoảng thời gianchuyển phát. Mã mẫu sau đây thể hiện kỹ thuật này:conn.ConnectionString = "Data Source = c:\temp\SalesData.sdf; " conn.Open() Dim tx As SqlCeTransaction tx = conn.BeginTransaction(System.Data.IsolationLevel.ReadCommitted) com = conn.CreateCommand() com.Transaction = tx Dim a As Integer a = 101 While (a <= 1000) com.CommandText = "insert into Orders values (" + Convert.ToString(a) + ", 'best', 200)" com.ExecuteNonQuery() a = a + 1 End While tx.Commit(CommitMode.Immediate)

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?

Bạn muốn xem các tùy chọn khác?

Khám phá các lợi ích của gói đăng ký, xem qua các khóa đào tạo, tìm hiểu cách bảo mật thiết bị của bạn và hơn thế nữa.