日期:2014-05-17  浏览次数:20806 次

关于access数据库存操作类的疑问! 很简单,但是我就不明白。
在网上搜索了一篇 access数据库操作类

http://blog.csdn.net/luchuanbo/article/details/4430666

public class Access_db
{

......
  /// <summary>  
  /// 执行查询语句,返回SqlDataReader (使用该方法切记要手工关闭SqlDataReader和连接)  
  /// </summary>  
  /// <param name="strSQL">查询语句</param>  
  /// <returns>SqlDataReader</returns>  
  public static OleDbDataReader ExecuteReader(string SQLString, params OleDbParameter[] cmdParms)  
  {  
  OleDbConnection connection = new OleDbConnection(connectionString);  
  OleDbCommand cmd = new OleDbCommand();  
  try  
  {  
  PrepareCommand(cmd, connection, null, SQLString, cmdParms);  
  OleDbDataReader myReader = cmd.ExecuteReader();  
  cmd.Parameters.Clear();  
  return myReader;  
  }  
  catch (System.Data.OleDb.OleDbException e)  
  {  
  throw new Exception(e.Message);  
  }  
  //finally //不能在此关闭,否则,返回的对象将无法使用  
  //{  
  // cmd.Dispose();  
  // connection.Close();  
  //}  
  }  

......

}

我想问一下这个要怎么调用??

Access_db my_test=new Access_db();
my_test.ExecuteReader(????)

求高手指点一下,谢谢。

------解决方案--------------------
Access_db.ExecuteReader(SQLString,cmdParms)
注意定义喔 
C# code

public static OleDbDataReader ExecuteReader(string SQLString, params OleDbParameter[] cmdParms)
//静态方法

------解决方案--------------------
my_test.ExecuteReader("select * from xxx",new OleDbParameter("@pname", Convert.ToInt32(0)))

看OleDbParameter的帮助
------解决方案--------------------
OleDbParameter类型的参数 基本上是SQL语句的参数值 因为很多情况参数不止一个 所以基本是参数数组.
如2楼的 
C# code

my_test.ExecuteReader("select * from xxx where pname=@pname",new OleDbParameter("@pname", Convert.ToInt32(0)))