无法从C#中的MSAccess获取数据

时间:2015-08-07 09:39:23

标签: c# ms-access ado.net

我正在尝试从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获取任何数据?

1 个答案:

答案 0 :(得分:1)

Ms Access使用“*”作为通配符。但是,C#OleDb API仍然使用“%”,即ANSI通配符。