我正在使用OLEDB命令在.mdb文件上运行基本查询,如下所示:
List<TPRItem> itemList = new List<TPRItem>();
string connStr = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + dirPath;
string sql = "SELECT UPC, ItemDesc, TPRAllow, NetCost, UnitCost, Pack, TPREndDate FROM OrderGuide WHERE TPRAllow > 0";
using (OleDbConnection conn = new OleDbConnection(connStr))
{
OleDbCommand cmd = new OleDbCommand(sql, conn);
try
{
conn.Open();
using (OleDbDataReader rdr = cmd.ExecuteReader())
{
while (rdr.Read())
{
TPRItem thisTPRItem = new TPRItem();
thisTPRItem.UPC = rdr["UPC"].ToString();
thisTPRItem.VendorDescription = rdr["ItemDesc"].ToString();
thisTPRItem.CaseAllowance = decimal.Parse(rdr["TPRAllow"].ToString());
thisTPRItem.CaseCost = decimal.Parse(rdr["NetCost"].ToString());
thisTPRItem.UnitCost = decimal.Parse(rdr["UnitCost"].ToString());
thisTPRItem.CsPack = int.Parse(rdr["Pack"].ToString());
thisTPRItem.EndDate = DateTime.Parse(rdr["TPREndDate"].ToString());
thisTPRItem.CaseAllowanceCost = thisTPRItem.CaseCost - thisTPRItem.CaseAllowance;
thisTPRItem.UnitAllowanceCost = thisTPRItem.CaseAllowanceCost / thisTPRItem.CsPack;
itemList.Add(thisTPRItem);
}
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
我的列表中只添加了2365项。但是当我在Access中运行这个完全相同的查询时,我得到10867个结果。
我正在访问一个月份变化的.mdb文件(数据不会改变格式)以前我们没有丢失项目的问题。
答案 0 :(得分:0)
将您的提供商更改为更高版本。