仿照以前收集的一個經典的sql server資料存取類,稍加修改。
使用系統;
使用系統數據;
使用系統配置;
使用系統.Web;
使用 System.Web.Security;
使用 System.Web.UI;
使用 System.Web.UI.WebControls;
使用 System.Web.UI.WebControls.WebParts;
使用 System.Web.UI.HtmlControls;
使用 System.Data.OleDb;
/// <摘要>
/// DataAccess 的摘要說明
/// </摘要>
公共類資料訪問
{
protected static OleDbConnection conn = new OleDbConnection();
protected static OleDbCommand comm = new OleDbCommand();
公共資料存取()
{
//初始化
}
私人靜態無效 openConnection()
{
if (conn.State == ConnectionState.Closed)
{
conn.ConnectionString = @"Provider=Microsoft.Jet.OleDb.4.0;Data Source="+ConfigurationManager.AppSettings["myconn"];//web.config檔案內設定。
comm.Connection = conn;
嘗試
{
conn.Open();
}
捕獲(異常 e)
{ 拋出新的例外(e.Message); }
}
}//開啟資料庫
私人靜態無效 closeConnection()
{
if (conn.State == ConnectionState.Open)
{
conn.Close();
conn.Dispose();
comm.Dispose();
}
}//關閉資料庫
public static void excuteSql(string sqlstr)
{
嘗試
{
打開連接();
comm.CommandType = CommandType.Text;
comm.CommandText = sqlstr;
comm.ExecuteNonQuery();
}
捕獲(異常 e)
{
拋出新的例外(e.Message);
}
最後
{ 關閉連線(); }
}//執行sql語句
public static OleDbDataReader dataReader(string sqlstr)
{
OleDbDataReader dr = null;
嘗試
{
打開連接();
comm.CommandText = sqlstr;
comm.CommandType = CommandType.Text;
dr = comm.ExecuteReader(CommandBehavior.CloseConnection);
}
抓住
{
嘗試
{
博士.關閉();
關閉連接();
}
抓住 { }
}
返回博士;
}//傳回指定sql語句的OleDbDataReader對象,使用時請注意關閉該對象。
公共靜態無效dataReader(字串sqlstr,ref OleDbDataReader dr)
{
嘗試
{
打開連接();
comm.CommandText = sqlstr;
comm.CommandType = CommandType.Text;
dr=comm.ExecuteReader(CommandBehavior.CloseConnection);
}
抓住
{
嘗試
{
if (dr != null && !dr.IsClosed)
博士.關閉();
}
抓住
{
}
最後
{
關閉連接();
}
}
}//傳回指定sql語句的OleDbDataReader對象,使用時請注意關閉
public static DataSet dataSet(string sqlstr)
{
資料集 ds = new 資料集();
OleDbDataAdapter da = new OleDbDataAdapter();
嘗試
{
打開連接();
comm.CommandType = CommandType.Text;
comm.CommandText = sqlstr;
da.SelectCommand = comm;
da.Fill(ds);
}
捕獲(異常 e)
{
拋出新的例外(e.Message);
}
最後
{
關閉連接();
}
返回ds;
}//傳回指定sql語句的資料集
public static void dataSet(string sqlstr, ref DataSet ds)
{
OleDbDataAdapter da = new OleDbDataAdapter();
嘗試
{
打開連接();
comm.CommandType = CommandType.Text;
comm.CommandText = sqlstr;
da.SelectCommand = comm;
da.Fill(ds);
}
捕獲(異常 e)
{
拋出新的例外(e.Message);
}
最後
{
關閉連接();
}
}//傳回指定sql語句的資料集
public static DataTable dataTable(string sqlstr)
{
DataTable dt = new DataTable();
OleDbDataAdapter da = new OleDbDataAdapter();
嘗試
{
打開連接();
comm.CommandType = CommandType.Text;
comm.CommandText = sqlstr;
da.SelectCommand = comm;
da.Fill(dt);
}
捕獲(異常 e)
{
拋出新的例外(e.Message);
}
最後
{
關閉連接();
}
返回dt;
}//傳回指定資料表的sql語句
公共靜態無效資料表(字串sqlstr,參考資料表dt)
{
OleDbDataAdapter da = new OleDbDataAdapter();
嘗試
{
打開連接();
comm.CommandType = CommandType.Text;
comm.CommandText = sqlstr;
da.SelectCommand = comm;
da.Fill(dt);
}
捕獲(異常 e)
{
拋出新的例外(e.Message);
}
最後
{
關閉連接();
}
}//傳回指定sql語句的資料表
public static DataView dataView(string sqlstr)
{
OleDbDataAdapter da = new OleDbDataAdapter();
資料視圖 dv = 新的資料視圖();
資料集 ds = new 資料集();
嘗試
{
打開連接();
comm.CommandType = CommandType.Text;
comm.CommandText = sqlstr;
da.SelectCommand = comm;
da.Fill(ds);
dv = ds.Tables[0].DefaultView;
}
捕獲(異常 e)
{
拋出新的例外(e.Message);
}
最後
{
關閉連接();
}
返回 dv;
}
//傳回指定sql語句的dataview
}
來源: http://enuosky.cnblogs.com/archive/2006/05/15/400879.html