2013-04-23 73 views
2

在我的應用程序中,我從本地MS Access數據庫文件中獲取一些數據。我對一個零星的問題感到困惑,那就是我對特定表的所有記錄的查詢有時會返回所有記錄,有時會返回除最後一個記錄以外的所有記錄。我使用下面的代碼OleDbDataAdapter零星缺失記錄

string resourceConStr = @"Provider=Microsoft.ACE.OLEDB.12.0;Data source = C:/FileName.mdb"; 
OleDbConnection resourceCon = new OleDbConnection(resourceConStr); 
OleDbDataAdapter personnelAdapter = new OleDbDataAdapter("Select * From Personnel", resourceCon); 
DataTable personnel = new DataTable(); 
personnelAdapter.Fill(personnel); 

當我看personnel數據表,有時我有正確的記錄#,有時我錯過從Access表中的最後一個記錄。我無法找到任何模式,以及它何時成功,何時不成功。任何想法可能是什麼原因或建議或驗證所有記錄被成功複製到DataTable?謝謝

+0

發生此問題時,您是否在另一個應用程序(例如,Access中)中打開了.mdb文件? – 2013-04-23 20:23:25

+0

不,我確定.mdb文件不幸在任何其他應用程序中打開。 – DaveH 2013-04-23 20:36:28

回答

0

任何建議或驗證所有記錄已成功複製到DataTable的方法?

一種方式做這將是執行SELECT COUNT(*) AS n FROM Personnel,和比較數(假設你得到一回),與在DataTable行數就得到填補後。

+0

謝謝Gord,我會用它作爲備份檢查,直到找出根本問題。 – DaveH 2013-04-29 02:59:39