我正在尝试从MS Access表中获取数据。我尝试获取数据的查询是在MS Access中获取结果但我无法在C#中获取任何数据。以下是我的代码:
public DataTable GetData(string _strTableName, string _strSQL)
{
//Get db connection
string _strdbconn = GetDbConn();
DataSet ds = new DataSet();
DataTable dt = new DataTable(_strTableName);
ds.Tables.Add(dt);
//Open Access Connection
OleDbConnection AccessConn = new OleDbConnection(_strdbconn);
try
{
//Fetch Data
AccessConn.Open();
OleDbCommand AccessComm = new OleDbCommand(_strSQL, AccessConn);
OleDbDataAdapter AccessDataAdptr = new OleDbDataAdapter(AccessComm);
AccessDataAdptr.Fill(ds, _strTableName);
}
catch (Exception ex)
{
throw ex;
}
finally
{
AccessConn.Close();
AccessConn.Dispose();
}
return ds.Tables[_strTableName];
}
以下是我正在使用的SQL:
SELECT CostCenterNumber FROM CostCenterDetails where CostCenterNumber like '100*';
可能是因为我没有在C#end获取任何数据?
答案 0 :(得分:1)
Ms Access使用“*”作为通配符。但是,C#OleDb API仍然使用“%”,即ANSI通配符。