DatabaseOp.cs

Access操作类 
using System;
using System.Data;
using System.Data.OleDb;

namespace ####
{
 
/// <summary>
 
/// 后台数据库操作部分
 
/// </summary>

 public class DatabaseOp
 
{
  
private OleDbConnection conn=null;
  
//  string strConn = " Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = C:\\Program Files\\##.mdb " ;
  private string connString =" Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source =";    //连接字符串

  
public DatabaseOp(string mdbFullName)
  
{
   connString 
+= mdbFullName;
   
//   string path=Application.StartupPath + "\\Database\\";
   
//   connString ="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
   
//    + path + "###.dat;User Id= ;Password=   ;Jet OLEDB:System Database="
   
//    + path + "——.dat;";
  }


  
public void Close()
  
{
   
try
   
{
    
if (conn!=null)
    
{
     conn.Close();
    }

   }

   
catch
   
{
    conn
=null;
   }

  }

  
  
/// <summary>
  
/// 返回数据库的阅读类
  
/// </summary>
  
/// <param name="strSql"></param>
  
/// <returns></returns>

  public OleDbDataReader GetDataReader(string strSql)
  
{
   OleDbDataReader dbReader
=null;
   
if(strSql=="")
   
{
    
return dbReader;
   }

   
try
   
{
    conn
=new OleDbConnection(this.connString);

    
if (conn.State==ConnectionState.Open)
    
{
     
//     conn.Close();
     
//int a=0;
    }

    
else
    
{
     conn.Open();
    }

    
//    conn.Open();
    OleDbCommand myCmd=conn.CreateCommand();
    myCmd.CommandText
=strSql;
    dbReader
=myCmd.ExecuteReader();

    
return dbReader;
    
   }

   
catch(Exception err)
   
{
    
throw err;
   }

   
finally
   
{
    
//    if (dbReader!=null)
    
//    {
    
//     dbReader.Close();
    
//     dbReader=null;
    
//    }
    
//    if (conn!=null)
    
//    {
    
//     conn.Close();
    
//     conn=null;
    
//    }
   }

  }


  
public object GetFirstValue(string strSql)
  
{
   
object obj=null;
   OleDbDataReader dbReader
=null;
   
if(strSql=="")
   
{
    
return "";
   }

   
try
   
{
    conn
=new OleDbConnection(this.connString);
    conn.Open();
    
    OleDbCommand myCmd
=conn.CreateCommand();
    myCmd.CommandText
=strSql;
    obj
=myCmd.ExecuteScalar();    
    
return obj;
    
   }

   
catch(Exception err)
   
{
    
throw err;
   }

   
finally
   
{
    
if (dbReader!=null)
    
{
     dbReader.Close();
     dbReader
=null;
    }

    
if (conn!=null)
    
{
     conn.Close();
     conn
=null;
    }

   }

  }


  
public bool HasRows(string strSql)
  
{
   
bool hasRow =false;
   OleDbDataReader dbReader
=null;
   
if(strSql=="")
   
{
    
return hasRow;
   }

   
try
   
{
    conn
=new OleDbConnection(this.connString);
    conn.Open();
    
    OleDbCommand myCmd
=conn.CreateCommand();
    myCmd.CommandText
=strSql;
    dbReader
=myCmd.ExecuteReader();

    
if (dbReader.Read())
    
{
     hasRow
=true;
    }

    
return hasRow;
        
   }

   
catch(Exception err)
   
{
    
throw err;
   }

   
finally
   
{
    
if (dbReader!=null)
    
{
     dbReader.Close();
     dbReader
=null;
    }

    
if (conn!=null)
    
{
     conn.Close();
     conn
=null;
    }

   }

  }

    
  
/// <summary>
  
/// 执行Sql语句,操作数据库
  
/// </summary>
  
/// <param name="strSql"></param>

  public int Execute(string strSql)
  
{
   
int rows=-1;
   OleDbConnection conn
=null;
   
try
   
{
    conn
=new OleDbConnection(this.connString);
    conn.Open();

    OleDbCommand nqcmd 
= conn.CreateCommand();
    nqcmd.CommandText 
= strSql;
    rows
=nqcmd.ExecuteNonQuery();
    
return rows;
   }

   
catch(Exception err)
   
{
    
throw err;
   }

   
finally
   
{
    
if (conn!=null)
    
{
     conn.Close();
     conn
=null;
    }

   }

  }


  
/// <summary>
  
/// 返回数据库的DataSet类
  
/// </summary>
  
/// <param name="strSql"></param>
  
/// <returns></returns>

  public DataSet GetDataSet(string strSql)
  
{
   OleDbConnection conn
=null;
   DataSet myDt
=null;
   
try
   
{
    conn
=new OleDbConnection(this.connString);
    conn.Open();

    myDt
=new DataSet();
    OleDbDataAdapter dataAdapter
=new OleDbDataAdapter(strSql,conn);
    dataAdapter.Fill(myDt);
    
    
return myDt;
   }

   
catch(Exception err)
   
{
    
throw err;
   }

   
finally
   
{
    
if (conn!=null)
    
{
     conn.Close();
     conn
=null;
    }

   }

  }


 }

}


原文地址:https://www.cnblogs.com/flashicp/p/697892.html