Tôi đang chạy mã này trên biểu mẫu con biểu dữ liệu của tôi khi biểu mẫu của tôi tải và tôi không nhận được bất kỳ thông báo lỗi hoặc ngắt mã nào. Debug.print của tôi cho thấy rằng các Recordset rs được lấp đầy với 2131 hồ sơ như nó phải được, nhưng hình thức của tôi cho thấy một hàng duy nhất với #Name? trong mọi lĩnh vực. Các thuộc tính nguồn điều khiển trên các điều khiển của tôi chắc chắn nhất phù hợp với các tên trường mà tôi đã liệt kê ở trên. RS là một biến cấp biểu mẫu và tôi không đóng nó hoặc đặt nó thành không có gì cho đến khi biểu mẫu đóng.Trong bộ nhớ, độc lập, bản ghi ADO bị ngắt kết nối
Bất kỳ ý tưởng nào tôi đang làm sai?
Set rs = New ADODB.Recordset
rs.Fields.Append "TimesUsed", adInteger
rs.Fields.Append "strWorkType", adVarWChar, 150
rs.Fields.Append "DateLastUsed", adDate
rs.Fields.Append "SelectedYN", adBoolean
Set rs.ActiveConnection = Nothing
rs.CursorLocation = adUseClient
rs.LockType = adLockBatchOptimistic
rs.Open
Dim sSQL As String
sSQL = "MyComplicated SQL Statement Ommitted from this SO Question"
Dim r As DAO.Recordset
Set r = CurrentDb.OpenRecordset(sSQL, dbOpenDynaset, dbSeeChanges)
If Not (r.EOF And r.BOF) Then
r.MoveFirst
Dim fld
Do Until r.EOF = True
rs.AddNew
For Each fld In r.Fields
rs(fld.Name) = r(fld.Name).value
Next
rs.Update
r.MoveNext
Loop
End If
r.Close
Set r = Nothing
Debug.Print rs.RecordCount '2131 records
Set Me.Recordset = rs
OK, vì vậy tôi chỉ cần đọc this on the MSDN site:
Các recordset phải chứa một hoặc nhiều lĩnh vực được lập chỉ mục duy nhất, chẳng hạn như khóa chính của một bảng.
(Lưu ý: Những thông tin này có vẻ là sai lầm trong bối cảnh này.)
Đây là một bảng nhỏ (4 lĩnh vực). Nhưng tôi đoán tôi đã không bao giờ thực sự phải phát triển cho doanh nghiệp vì vậy tôi quen với việc kéo một lượng lớn dữ liệu (10.000 bản ghi và đôi khi nhiều hơn) vào dạng xem biểu dữ liệu. Với Gigabit Ethernet và ổ đĩa cứng nhanh trong máy chủ của chúng tôi, tôi không nhận được khiếu nại từ người dùng của mình mặc dù chúng tôi đang sử dụng DAO với ODBC Linked Tables. Vì vậy, tôi không thực sự giải thích cách tiếp cận của tôi nhiều như tôi chỉ nói rằng "cho đến nay" nó thực sự hoạt động khá tốt. – HK1