日期:2014-05-18  浏览次数:21104 次

c#数据库怎么得到查询结果?
/*
  将数据库的操作打包成如下格式
  如果使用select语句,比如
  string strSQL1 = "select 疫苗总量 from vaccStore where name = '"+name+"';";
  如何让下面的函数ExecuteAccessQuery(strSQL1)返回一个查询结果呢?
*/  
  public static object ExecuteAccessQuery(string strSQL)
  {
  string ACCESS_CONN_STRING = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Database3.accdb";

  OleDbConnection conn = new OleDbConnection(ACCESS_CONN_STRING);

  OleDbCommand cmd = new OleDbCommand(strSQL, conn);

  cmd.CommandType = CommandType.Text;

  try
  {
  OleDbDataAdapter da = new OleDbDataAdapter(cmd);

  DataSet ds = new DataSet();

  da.Fill(ds);

  return ds;

  }
  catch
  {
  conn.Close();
  throw;
  }

  }

------解决方案--------------------
public static Dataset ExecuteAccessQuery

DataTable dt = Dataset.Talbes[0];
------解决方案--------------------
string strSQL1 = "select 疫苗总量 from vaccStore where name = '"+name+"';";

你这样得到的不是一个值,而是一个表,

改为:

DataSet ds=(DataSet)ExecuteAccessQuery(strSQL1);

int i=Conver.ToInt32(ds.Tables[0].Rows[0][0]);