namespace SysClassLibrary { /// <summary> /// DataAccess 的摘要說明。 /// <description>數(shù)據(jù)處理基類,調(diào)用方式:DataAccess.DataSet((string) " /> 亚州综人网,亚洲香蕉网久久综合影院,亚洲精品色情APP在线下载观看

天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

ASP.NET 數(shù)據(jù)訪問類

using System;
using System.Data;
using System.Data.SqlClient; 

namespace SysClassLibrary
{
/// <summary>
/// DataAccess 的摘要說明。
/// <description>數(shù)據(jù)處理基類,調(diào)用方式:DataAccess.DataSet((string)sqlstr);或者DataAccess.DataSet((string)sqlstr,ref DataSet ds); </description>
/// </summary>
public class DataAccess
{
#region 屬性
protected static SqlConnection conn=new SqlConnection();
protected static SqlCommand comm=new SqlCommand();
#endregion
public DataAccess()
{
//init();
}
#region 內(nèi)部函數(shù) 靜態(tài)方法中不會執(zhí)行DataAccess()構(gòu)造函數(shù)

/// <summary>
/// 打開數(shù)據(jù)庫連接
/// </summary>
private static void openConnection()
{
if (conn.State == ConnectionState.Closed)
{
//SysConfig.ConnectionString 為系統(tǒng)配置類中連接字符串,如:"server=localhost;database=databasename;uid=sa;pwd=;"

conn.ConnectionString = SysConfig.ConnectionString ;
comm.Connection =conn;
try
{
conn.Open();
}
catch(Exception e)
{
throw new Exception(e.Message);
}
}
}
/// <summary>
/// 關(guān)閉當(dāng)前數(shù)據(jù)庫連接
/// </summary>
private static void closeConnection()
{
if(conn.State == ConnectionState.Open)
conn.Close();
conn.Dispose();
comm.Dispose();
}
#endregion
/// <summary>
/// 執(zhí)行Sql查詢語句
/// </summary>
/// <param name="sqlstr">傳入的Sql語句</param>
public static void ExecuteSql(string sqlstr)
{
try
{
openConnection();
comm.CommandType =CommandType.Text ;
comm.CommandText =sqlstr;
comm.ExecuteNonQuery(); 
}
catch(Exception e)
{
throw new Exception(e.Message);
}
finally
{
closeConnection();
}
}

/// <summary>
/// 執(zhí)行存儲過程
/// </summary>
/// <param name="procName">存儲過程名</param>
/// <param name="coll">SqlParameters 集合</param>
public static void ExecutePorcedure(string procName,SqlParameter[] coll)
{
try
{
openConnection();
for(int i=0;i<coll.Length;i++)
{
comm.Parameters .Add(coll);
}
comm.CommandType=CommandType.StoredProcedure ;
comm.CommandText =procName;
comm.ExecuteNonQuery();
}
catch(Exception e)
{
throw new Exception(e.Message);
}
finally
{
comm.Parameters.Clear();
closeConnection();
}
}

/// <summary>
/// 執(zhí)行存儲過程并返回數(shù)據(jù)集
/// </summary>
/// <param name="procName">存儲過程名稱</param>
/// <param name="coll">SqlParameter集合</param>
/// <param name="ds">DataSet </param>
public static void ExecutePorcedure(string procName,SqlParameter[] coll,ref DataSet ds)
{
try
{
SqlDataAdapter da=new SqlDataAdapter();
openConnection();
for(int i=0;i<coll.Length;i++)
{
comm.Parameters .Add(coll);
}
comm.CommandType=CommandType.StoredProcedure ;
comm.CommandText =procName;

da.SelectCommand =comm;
da.Fill(ds);
}
catch(Exception e)
{
throw new Exception(e.Message);
}
finally
{
comm.Parameters.Clear();
closeConnection();
}
}

/// <summary>
/// 執(zhí)行Sql查詢語句并返回第一行的第一條記錄,返回值為object 使用時需要拆箱操作 -> Unbox
/// </summary>
/// <param name="sqlstr">傳入的Sql語句</param>
/// <returns>object 返回值 </returns>
public static object ExecuteScalar(string sqlstr)
{
object obj=new object();
try
{
openConnection();
comm.CommandType =CommandType.Text ;
comm.CommandText =sqlstr;
obj=comm.ExecuteScalar(); 
}
catch(Exception e)
{
throw new Exception(e.Message);
}
finally
{
closeConnection();
}
return obj;
}

/// <summary>
/// 執(zhí)行Sql查詢語句,同時進(jìn)行事務(wù)處理
/// </summary>
/// <param name="sqlstr">傳入的Sql語句</param>
public static void ExecuteSqlWithTransaction(string sqlstr)
{
SqlTransaction trans ;
trans=conn.BeginTransaction();
comm.Transaction =trans;
try
{
openConnection();
comm.CommandType =CommandType.Text ;
comm.CommandText =sqlstr;
comm.ExecuteNonQuery(); 
trans.Commit();
}
catch
{
trans.Rollback();
}
finally
{
closeConnection();
}
}

/// <summary>
/// 返回指定Sql語句的SqlDataReader,請注意,在使用后請關(guān)閉本對象,同時將自動調(diào)用closeConnection()來關(guān)閉數(shù)據(jù)庫連接
/// 方法關(guān)閉數(shù)據(jù)庫連接
/// </summary>
/// <param name="sqlstr">傳入的Sql語句</param>
/// <returns>SqlDataReader對象</returns>
public static SqlDataReader dataReader(string sqlstr)
{
SqlDataReader dr=null;
try
{
openConnection();
comm.CommandText =sqlstr;
comm.CommandType =CommandType.Text ;
dr=comm.ExecuteReader(CommandBehavior.CloseConnection); 
}
catch
{
try
{
dr.Close();
closeConnection();
}
catch
{
}
}
return dr;
}
/// <summary>
/// 返回指定Sql語句的SqlDataReader,請注意,在使用后請關(guān)閉本對象,同時將自動調(diào)用closeConnection()來關(guān)閉數(shù)據(jù)庫連接
/// 方法關(guān)閉數(shù)據(jù)庫連接
/// </summary>
/// <param name="sqlstr">傳入的Sql語句</param>
/// <param name="dr">傳入的ref DataReader 對象</param>
public static void dataReader(string sqlstr,ref SqlDataReader dr)
{
try
{
openConnection();
comm.CommandText =sqlstr;
comm.CommandType =CommandType.Text ;
dr=comm.ExecuteReader(CommandBehavior.CloseConnection); 
}
catch
{
try
{
if(dr!=null && !dr.IsClosed)
dr.Close();
}
catch
{
}
finally
{
closeConnection();
}
}
}

/// <summary>
/// 返回指定Sql語句的DataSet
/// </summary>
/// <param name="sqlstr">傳入的Sql語句</param>
/// <returns>DataSet</returns>
public static DataSet dataSet(string sqlstr)
{
DataSet ds= new DataSet();
SqlDataAdapter da=new SqlDataAdapter();
try
{
openConnection();
comm.CommandType =CommandType.Text ;
comm.CommandText =sqlstr;
da.SelectCommand =comm;
da.Fill(ds);
}
catch(Exception e)
{
throw new Exception(e.Message); 
}
finally
{
closeConnection();
}
return ds;
}

/// <summary>
/// 返回指定Sql語句的DataSet
/// </summary>
/// <param name="sqlstr">傳入的Sql語句</param>
/// <param name="ds">傳入的引用DataSet對象</param>
public static void dataSet(string sqlstr,ref DataSet ds)
{
SqlDataAdapter da=new SqlDataAdapter();
try
{
openConnection();
comm.CommandType =CommandType.Text ;
comm.CommandText =sqlstr;
da.SelectCommand =comm;
da.Fill(ds);
}
catch(Exception e)
{
throw new Exception(e.Message); 
}
finally
{
closeConnection();
}
}
/// <summary>
/// 返回指定Sql語句的DataTable
/// </summary>
/// <param name="sqlstr">傳入的Sql語句</param>
/// <returns>DataTable</returns>
public static DataTable dataTable(string sqlstr)
{
SqlDataAdapter da=new SqlDataAdapter();
DataTable datatable=new DataTable();
try
{
openConnection();
comm.CommandType =CommandType.Text ;
comm.CommandText =sqlstr;
da.SelectCommand =comm;
da.Fill(datatable);
}
catch(Exception e)
{
throw new Exception(e.Message); 
}
finally
{
closeConnection();
}
return datatable;
}

/// <summary>
/// 執(zhí)行指定Sql語句,同時給傳入DataTable進(jìn)行賦值 
/// </summary>
/// <param name="sqlstr">傳入的Sql語句</param>
/// <param name="dt">ref DataTable dt </param>
public static void dataTable(string sqlstr,ref DataTable dt)
{
SqlDataAdapter da=new SqlDataAdapter();
try
{
openConnection();
comm.CommandType =CommandType.Text ;
comm.CommandText =sqlstr;
da.SelectCommand =comm;
da.Fill(dt);
}
catch(Exception e)
{
throw new Exception(e.Message); 
}
finally
{
closeConnection();
}
}
/// <summary>
/// 執(zhí)行帶參數(shù)存儲過程并返回數(shù)據(jù)集合
/// </summary>
/// <param name="procName">存儲過程名稱</param>
/// <param name="parameters">SqlParameterCollection 輸入?yún)?shù)</param>
/// <returns></returns>
public static DataTable dataTable(string procName,SqlParameterCollection parameters)

SqlDataAdapter da=new SqlDataAdapter();
DataTable datatable=new DataTable();

try
{
openConnection();
comm.Parameters.Clear();
comm.CommandType=CommandType.StoredProcedure ;
comm.CommandText =procName;
foreach(SqlParameter para in parameters)
{
SqlParameter p=(SqlParameter)para;
comm.Parameters.Add(p);
}
da.SelectCommand =comm;
da.Fill(datatable);
}
catch(Exception e)
{
throw new Exception(e.Message);
}
finally
{
closeConnection();
}
return datatable;
}

public static DataView dataView(string sqlstr)
{
SqlDataAdapter da=new SqlDataAdapter();
DataView dv=new DataView();
DataSet ds=new DataSet();
try
{
openConnection();
comm.CommandType=CommandType.Text;
comm.CommandText =sqlstr;
da.SelectCommand =comm;
da.Fill(ds);
dv=ds.Tables[0].DefaultView;
}
catch(Exception e)
{
throw new Exception(e.Message);
}
finally
{
closeConnection();
}
return dv;
}
}

}

AspNet技術(shù)ASP.NET 數(shù)據(jù)訪問類,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 最近中文字幕MV免费看 | 全黄H全肉细节文NP 全黄h全肉细节全文 | 天天狠狠色综合图片区 | 亚洲爱视频 | 色欲AV色欲AV久久麻豆 | 姑娘视频日本在线播放 | 国产精品一区二区在线播放 | 久久国内精品 | writeas雷狮直播 | 国产精品久久精品 | 男人免费网站 | 国产一区日韩二区欧美三区 | 成年人免费观看的视频 | 老司机福利在视频在ae8 | 色戒床震视频片段 | ai换脸女明星被躁在线观看免费 | 在线亚洲中文字幕36页 | 动漫美女被h动态图 | 影音先锋av男人资源 | 亚洲美女视频高清在线看 | AV色蜜桃一区二区三区 | 91亚洲精品福利在线播放 | 中文字幕亚洲欧美日韩2019 | 久久影院一区 | 白白操在线视频 | 一区三区三区不卡 | 国模丽丽啪啪一区二区 | 午夜男女爽爽羞羞影院在线观看 | 成人在免费视频手机观看网站 | bbwxxxx交女警 | 国产精品女主播主要上线 | 人人干人人爽 | 人妻中文字幕无码久久AV爆 | 精品一区二区三区色花堂 | 亚洲AV久久婷婷蜜臀无码不卡 | 99久久99久久久99精品齐 | 一级毛片免费视频网站 | 末班车动漫无删减免费 | 怪物高h粗暴无尽 | 香蕉水蜜桃牛奶涩涩 | 美女被强奷到抽搐的动态图 |