 using System;
using System; using System.Data;
using System.Data; using System.Data.OleDb;
using System.Data.OleDb; using System.Windows.Forms;
using System.Windows.Forms;
 namespace Sun.WebExam
namespace Sun.WebExam

 {
{
 /**//// <summary>
 /**//// <summary> /// LocalDb 的摘要说明。
 /// LocalDb 的摘要说明。 /// </summary>
 /// </summary> public class LocalDb
 public class LocalDb
 
  {
{ OleDbConnection conn;
  OleDbConnection conn; public LocalDb()
  public LocalDb()
 
   {
{ //
   // // TODO: 在此处添加构造函数逻辑
   // TODO: 在此处添加构造函数逻辑 //
   // //在此处设置访问的数据库文件
   //在此处设置访问的数据库文件 string strConn=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Application.StartupPath+"\\Data\\SunWebExam.mdb";
   string strConn=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Application.StartupPath+"\\Data\\SunWebExam.mdb"; conn=new OleDbConnection(strConn);
   conn=new OleDbConnection(strConn); }
  }
 private void Open()
  private void Open()
 
   {
{ if(conn==null)
   if(conn==null)
 
    {
{ //在此处设置访问的数据库文件
    //在此处设置访问的数据库文件 string strConn=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Application.StartupPath+"\\Data\\SunWebExam.mdb";
    string strConn=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Application.StartupPath+"\\Data\\SunWebExam.mdb"; conn=new OleDbConnection(strConn);
    conn=new OleDbConnection(strConn); conn.Open();
    conn.Open();
 }
   } else if(conn.State==System.Data.ConnectionState.Closed)
   else if(conn.State==System.Data.ConnectionState.Closed) conn.Open();
    conn.Open();
 }
  }
 public void Close()
  public void Close() 
 
   {
{ if (conn != null)
   if (conn != null) conn.Close();
    conn.Close(); }
  }


 /**//// <summary>
  /**//// <summary> /// 执行一条不需要返回值SQL命令,比如插入、删除
  /// 执行一条不需要返回值SQL命令,比如插入、删除 /// </summary>
  /// </summary> /// <param name="commtext"></param>
  /// <param name="commtext"></param> public void ExecCommand(string commtext)
  public void ExecCommand(string commtext) 
 
   {
{ Open();
   Open();
 OleDbCommand cmd = new OleDbCommand(commtext,conn);
   OleDbCommand cmd = new OleDbCommand(commtext,conn); cmd.CommandType = CommandType.Text;
   cmd.CommandType = CommandType.Text; cmd.ExecuteNonQuery();
   cmd.ExecuteNonQuery(); cmd.Dispose();
   cmd.Dispose(); conn.Close();
   conn.Close(); }
  }

 /**//// <summary>
  /**//// <summary> /// 执行多条不需要返回值SQL命令,比如插入、删除
  /// 执行多条不需要返回值SQL命令,比如插入、删除 /// </summary>
  /// </summary> /// <param name="commtext"></param>
  /// <param name="commtext"></param> public void ExecCommand(string[] commtext)
  public void ExecCommand(string[] commtext) 
 
   {
{ Open();
   Open(); for(int i=0;i<commtext.Length;i++)
   for(int i=0;i<commtext.Length;i++)
 
    {
{ OleDbCommand cmd = new OleDbCommand(commtext[i],conn);
    OleDbCommand cmd = new OleDbCommand(commtext[i],conn); cmd.CommandType = CommandType.Text;
    cmd.CommandType = CommandType.Text; cmd.ExecuteNonQuery();
    cmd.ExecuteNonQuery(); cmd.Dispose();
    cmd.Dispose(); //conn.Close();
    //conn.Close(); }
   } }
  }

 /**//// <summary>
  /**//// <summary> /// 执行一条不需要返回值SQL命令,比如插入、删除,可以带一个参数数组
  /// 执行一条不需要返回值SQL命令,比如插入、删除,可以带一个参数数组 /// </summary>
  /// </summary> /// <param name="commtext"></param>
  /// <param name="commtext"></param> /// <param name="prams"></param>
  /// <param name="prams"></param> public void ExecCommand(string commtext,OleDbParameter[] prams)
  public void ExecCommand(string commtext,OleDbParameter[] prams) 
 
   {
{ Open();
   Open();
 OleDbCommand cmd = new OleDbCommand(commtext,conn);
   OleDbCommand cmd = new OleDbCommand(commtext,conn); cmd.CommandType = CommandType.Text;
   cmd.CommandType = CommandType.Text;
 if (prams != null)
   if (prams != null) 
 
    {
{ foreach (OleDbParameter parameter in prams)
    foreach (OleDbParameter parameter in prams) cmd.Parameters.Add(parameter);
     cmd.Parameters.Add(parameter); }
   }
 cmd.ExecuteNonQuery();
   cmd.ExecuteNonQuery(); cmd.Dispose();
   cmd.Dispose(); }
  }

 /**//// <summary>
  /**//// <summary> /// 执行一条统计类的SQL语句,返回一个整数
  /// 执行一条统计类的SQL语句,返回一个整数 /// </summary>
  /// </summary> /// <param name="CommText"></param>
  /// <param name="CommText"></param> /// <returns></returns>
  /// <returns></returns> public int ExecScalar(string CommText)
  public int ExecScalar(string CommText)
 
   {
{ Open();
   Open();
 OleDbCommand  cmd=new OleDbCommand(CommText,conn);
   OleDbCommand  cmd=new OleDbCommand(CommText,conn); cmd.CommandType=CommandType.Text;
   cmd.CommandType=CommandType.Text; return cmd.ExecuteScalar()!=null?(int)cmd.ExecuteScalar():0;
   return cmd.ExecuteScalar()!=null?(int)cmd.ExecuteScalar():0; conn.Close();
   conn.Close(); }
  }
 
 

 /**//// <summary>
  /**//// <summary> /// 执行一条SQL语句,输出一个DataRerader
  /// 执行一条SQL语句,输出一个DataRerader /// </summary>
  /// </summary> /// <param name="commtext"></param>
  /// <param name="commtext"></param> /// <param name="dr"></param>
  /// <param name="dr"></param> public void ExecQuery(string commtext,out OleDbDataReader dr)
  public void ExecQuery(string commtext,out OleDbDataReader dr)
 
   {
{ Open();
   Open(); OleDbCommand cmd = new OleDbCommand(commtext,conn);
   OleDbCommand cmd = new OleDbCommand(commtext,conn); cmd.CommandType = CommandType.Text;
   cmd.CommandType = CommandType.Text;
 dr=cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
   dr=cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection); cmd.Dispose();
   cmd.Dispose(); //conn.Close();
   //conn.Close(); }
  }

 /**//// <summary>
  /**//// <summary> /// 执行一条OleDb语句,输出一个DataSet
  /// 执行一条OleDb语句,输出一个DataSet /// </summary>
  /// </summary> /// <param name="CmdText"></param>
  /// <param name="CmdText"></param> /// <param name="TableName"></param>
  /// <param name="TableName"></param> /// <param name="DS"></param>
  /// <param name="DS"></param> public void Exec4DS(string CmdText,string TableName,out DataSet DS)
  public void Exec4DS(string CmdText,string TableName,out DataSet DS)
 
   {
{ Open();
   Open(); DS=new DataSet();
   DS=new DataSet(); OleDbDataAdapter da=new OleDbDataAdapter(CmdText,conn);
   OleDbDataAdapter da=new OleDbDataAdapter(CmdText,conn); da.Fill(DS,TableName);
   da.Fill(DS,TableName); conn.Close();
   conn.Close(); }
  }
 
  
 /**//// <summary>
  /**//// <summary> ///  执行一条带参数的SQL语句,并返回一个命名了数据表的数据集
  ///  执行一条带参数的SQL语句,并返回一个命名了数据表的数据集 /// </summary>
  /// </summary> /// <param name="cmdtext">SQL语句</param>
  /// <param name="cmdtext">SQL语句</param> /// <param name="tablename">表名</param>
  /// <param name="tablename">表名</param> /// <param name="prams">参数数组</param>
  /// <param name="prams">参数数组</param> /// <param name="ds">数据集</param>
  /// <param name="ds">数据集</param> public void Exec4DS(string cmdtext,string tablename,OleDbParameter[] prams,out DataSet ds)
  public void Exec4DS(string cmdtext,string tablename,OleDbParameter[] prams,out DataSet ds)
 
   {
{ Open();
   Open(); ds=new DataSet();
   ds=new DataSet(); OleDbCommand cmd = new OleDbCommand(cmdtext, conn);
   OleDbCommand cmd = new OleDbCommand(cmdtext, conn); cmd.CommandType = CommandType.Text;
   cmd.CommandType = CommandType.Text; if (prams != null)
   if (prams != null) 
 
    {
{ foreach (OleDbParameter parameter in prams)
    foreach (OleDbParameter parameter in prams) cmd.Parameters.Add(parameter);
     cmd.Parameters.Add(parameter); }
   } OleDbDataAdapter da=new OleDbDataAdapter(cmd);
   OleDbDataAdapter da=new OleDbDataAdapter(cmd); da.Fill(ds,tablename);
   da.Fill(ds,tablename); }
  }

 /**//// <summary>
  /**//// <summary> /// 一次执行多条SQL语句,将多个表填入一个DataSet
  /// 一次执行多条SQL语句,将多个表填入一个DataSet /// </summary>
  /// </summary> /// <param name="sqlCmds">SQL语句数组</param>
  /// <param name="sqlCmds">SQL语句数组</param> /// <param name="TableNames">表名数组</param>
  /// <param name="TableNames">表名数组</param> /// <param name="DS">数据集名</param>
  /// <param name="DS">数据集名</param> public void ExecXDS(string[] sqlCmds,string[] TableNames,out DataSet DS)
  public void ExecXDS(string[] sqlCmds,string[] TableNames,out DataSet DS)
 
   {
{ Open();
   Open(); DS=new DataSet();
   DS=new DataSet(); for(int i=0;i<sqlCmds.Length;i++)
   for(int i=0;i<sqlCmds.Length;i++)
 
    {
{ OleDbDataAdapter da=new OleDbDataAdapter(sqlCmds[i],conn);
    OleDbDataAdapter da=new OleDbDataAdapter(sqlCmds[i],conn); da.Fill(DS,TableNames[i]);
    da.Fill(DS,TableNames[i]); }
   } }
  } }
 } }
}

来源:https://www.cnblogs.com/syringa-flz/archive/2006/10/28/542553.html