亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > .NET > 正文

ASP.NET對SQLServer的通用數據庫訪問類

2024-07-10 13:29:54
字體:
來源:轉載
供稿:網友
這篇文章主要實現了ASP.NET對SQLServer的通用數據庫訪問類
 

本文模仿實現數據庫訪問的通用類,代碼清晰,而且很實用,包括了對數據庫的所有的常用的操作。

  /// <summary>  /// 數據庫訪問通用類  /// </summary>  public class SqlHelper  {  private string connectionString;  /// <summary>  /// 設定數據庫訪問字符串  /// </summary>  public string ConnectionString  {  set { connectionString = value; }  }  /// <summary>  /// 構造函數  /// </summary>  /// <param name="connectionString">數據庫訪問字符串</param>  public SqlHelper(string connectionString)  {  this.connectionString = connectionString;  }  /// <summary>  /// 執行一個查詢,并返回查詢結果  /// </summary>  /// <param name="sql">要執行的sql語句</param>  /// <param name="commandType">要執行的查詢語句的類型,如存儲過程或者sql文本命令</param>  /// <returns>返回查詢結果集</returns>  public DataTable ExecuteDataTable(string sql,CommandType commandType)  {  return ExecuteDataTable(sql, commandType, null);  }  /// <summary>  /// 執行一個查詢,并返回結果集  /// </summary>  /// <param name="sql">要執行的sql文本命令</param>  /// <returns>返回查詢的結果集</returns>  public DataTable ExecuteDataTable(string sql)  {  return ExecuteDataTable(sql, CommandType.Text, null);  }  /// <summary>  /// 執行一個查詢,并返回查詢結果  /// </summary>  /// <param name="sql">要執行的sql語句</param>  /// <param name="commandtype">要執行查詢語句的類型,如存儲過程或者sql文本命令</param>  /// <param name="parameters">Transact-SQL語句或者存儲過程參數數組</param>  /// <returns></returns>  public DataTable ExecuteDataTable(string sql, CommandType commandtype, SqlParameter[] parameters)  {  DataTable data = new DataTable(); //實例化datatable,用于裝載查詢結果集  using (SqlConnection con = new SqlConnection(connectionString))  {  using (SqlCommand cmd = new SqlCommand(sql, con))  {  cmd.CommandType = commandtype;//設置command的commandType為指定的Commandtype  //如果同時傳入了參數,則添加這些參數  if (parameters != null)  {  foreach (SqlParameter parameter in parameters)  {  cmd.Parameters.Add(parameter);  }  }  //通過包含查詢sql的sqlcommand實例來實例化sqldataadapter  SqlDataAdapter adapter = new SqlDataAdapter(cmd);  adapter.Fill(data);//填充datatable  }  }  return data;  }  /// <summary>  /// 返回一個SqlDataReader對象的實例  /// </summary>  /// <param name="sql">要執行的SQl查詢命令</param>  /// <returns></returns>  public SqlDataReader ExecuteReader(string sql)  {  return ExecuteReader(sql, CommandType.Text, null);  }  /// <summary>  ///  /// </summary>  /// <param name="sql">要執行的sql語句</param>  /// <param name="commandType">要執行查詢語句的類型,如存儲過程或者SQl文本命令</param>  /// <returns></returns>  public SqlDataReader ExecuteReader(string sql,CommandType commandType)  {  return ExecuteReader(sql, commandType, null);  }  /// <summary>  /// 返回一個sqldatareader對象的實例  /// </summary>  /// <param name="sql"></param>  /// <param name="commandType"></param>  /// <param name="parameters"></param>  /// <returns></returns>  public SqlDataReader ExecuteReader(string sql, CommandType commandType, SqlParameter[] parameters)  {  SqlConnection con = new SqlConnection(connectionString);  SqlCommand cmd = new SqlCommand(sql, con);  if (parameters != null)  {  foreach (SqlParameter parameter in parameters)  {  cmd.Parameters.Add(parameters);  }  }  con.Open();  //CommandBehavior.CloseConnection參數指示關閉reader對象時關閉與其關聯的Connection對象  return cmd.ExecuteReader(CommandBehavior.CloseConnection);  }  /// <summary>  /// 執行一個查詢,返回結果集的首行首列。忽略其他行,其他列  /// </summary>  /// <param name="sql">要執行的SQl命令</param>  /// <returns></returns>  public Object ExecuteScalar(string sql)  {  return ExecuteScalar(sql, CommandType.Text, null);  }  /// <summary>  ///  /// </summary>  /// <param name="sql"></param>  /// <param name="commandType"></param>  /// <returns></returns>  public Object ExecuteScalar(string sql, CommandType commandType)  {  return ExecuteScalar(sql, commandType, null);  }  /// <summary>  ///  /// </summary>  /// <param name="sql"></param>  /// <param name="commandType">參數類型</param>  /// <param name="parameters"></param>  /// <returns></returns>  public Object ExecuteScalar(string sql,CommandType commandType, SqlParameter[] parameters)  {  Object result=null;  SqlConnection con=new SqlConnection(connectionString);  SqlCommand cmd=new SqlCommand(sql,con);  cmd.CommandType= commandType;  if(parameters!=null)  {  foreach (SqlParameter parapmeter in parameters)  {  cmd.Parameters.Add(parapmeter);  }  }  con.Open();  result=cmd.ExecuteScalar();  con.Close();  return result;  }  /// <summary>  /// 對數據庫進行增刪改的操作  /// </summary>  /// <param name="sql">要執行的sql命令</param>  /// <returns></returns>  public int ExecuteNonQuery(string sql)  {  return ExecuteNonQuery(sql, CommandType.Text, null);  }  /// <summary>  /// 數據庫進行增刪改的操作  /// </summary>  /// <param name="sql">對數據庫進行操作的sql命令</param>  /// <param name="commandType">要執行查詢語句的類型,如存儲過程或者sql文本命令</param>  /// <returns></returns>  public int ExecuteNonQuery(string sql, CommandType commandType)  {  return ExecuteNonQuery(sql, commandType, null);  }  /// <summary>  /// 對數據庫進行增刪改的操作  /// </summary>  /// <param name="sql">要執行的sql語句</param>  /// <param name="commandType">要執行的查詢語句類型,如存儲過程或者sql文本命令</param>  /// <param name="parameters">Transact-SQL語句或者存儲過程的參數數組</param>  /// <returns></returns>  public int ExecuteNonQuery(string sql, CommandType commandType, SqlParameter[] parameters)  {  int count = 0;  SqlConnection con = new SqlConnection(connectionString);  SqlCommand cmd = new SqlCommand(sql, con);  cmd.CommandType = commandType;  if (parameters != null)  {  foreach(SqlParameter parameter in parameters)  {  cmd.Parameters.Add(parameter);  }  }  con.Open();  count = cmd.ExecuteNonQuery();  con.Close();  return count;  }  /// <summary>  /// 返回當前連接的數據庫中所有用戶創建的數據庫  /// </summary>  /// <returns></returns>  public DataTable GetTables()  {  DataTable table = null;  using (SqlConnection con = new SqlConnection(connectionString))  {  con.Open();  table = con.GetSchema("Tables");  }  return table;  }  }

    如果我們建立了一個對數據庫訪問的通用類以后,在隨數據庫進行操作的時候嗎,就只需要先實例化對象,然后根據自己的需要,調用相應的方法就可以完成對數據庫的所有操作。這就是數據庫訪問層和業務邏輯層分開的好處。
    這樣書寫的代碼,可以大大的減少我們代碼的復雜度,而且,繁瑣度也大大的降低了。

以上就是本文的全部內容,希望對大家的學習有所幫助。



注:相關教程知識閱讀請移步到ASP.NET教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久久天堂国产精品女人| 国产精品免费一区豆花| 欧美电影在线观看高清| 亚洲另类欧美自拍| 色哟哟入口国产精品| 最近2019中文字幕第三页视频| 国产精品稀缺呦系列在线| 欧美日韩xxx| 欧美视频在线免费看| 人九九综合九九宗合| 久久五月天综合| 国产免费一区二区三区在线观看| 欧美精品videosex极品1| 在线观看精品国产视频| 国产日产亚洲精品| 亚洲黄在线观看| 国产欧美欧洲在线观看| 久久不射热爱视频精品| 欧美性猛交xxxx久久久| 97色在线观看免费视频| 中文亚洲视频在线| 亚洲欧美日韩在线高清直播| 亚洲韩国青草视频| 亚洲色图在线观看| 日本一区二区三区四区视频| 欧美疯狂做受xxxx高潮| 不卡av电影院| 欧美—级a级欧美特级ar全黄| 国产91在线播放精品91| 国产精品自拍偷拍| 久久在线免费观看视频| 国产精品中文字幕在线观看| 国内精久久久久久久久久人| 久久99热精品这里久久精品| 久久久视频在线| 亚洲视频电影图片偷拍一区| 日韩专区在线观看| 91欧美激情另类亚洲| 亚洲成色777777在线观看影院| 国产视频久久网| 国产偷国产偷亚洲清高网站| 亚洲三级av在线| 国产视频久久久久| 91久久精品国产91久久| 久久精品成人一区二区三区| 日韩激情av在线播放| 国产91精品网站| 亚洲精品动漫久久久久| 国产亚洲美女久久| 精品视频中文字幕| 亚洲成人久久一区| 91免费电影网站| 色综合亚洲精品激情狠狠| 69**夜色精品国产69乱| 91麻豆国产精品| 久久国产色av| 伊是香蕉大人久久| 精品视频在线播放色网色视频| 日本亚洲精品在线观看| 国产精品久久久久久久久久久久久| 国产精品欧美日韩久久| www亚洲精品| 在线视频欧美性高潮| 欧美第一页在线| 国产日韩在线精品av| 精品久久久久久电影| 日韩成人在线电影网| 色哟哟亚洲精品一区二区| 91精品国产91久久久久久久久| 国产玖玖精品视频| 亚洲欧美在线免费观看| 5252色成人免费视频| 国产成人精品一区| 国产精品成av人在线视午夜片| 国产精品亚洲美女av网站| 成人淫片在线看| 久热国产精品视频| 97久久精品人搡人人玩| 亚洲精品午夜精品| 欧美在线精品免播放器视频| 久久久久久久久久久免费精品| 欧美国产精品va在线观看| 欧美日韩国产综合新一区| 精品无人区太爽高潮在线播放| 久久激情视频免费观看| 久久成人这里只有精品| xxx欧美精品| y97精品国产97久久久久久| 久久国产精品久久国产精品| 深夜精品寂寞黄网站在线观看| 国产精品一区二区电影| 日韩视频精品在线| 久久久精品在线观看| 一级做a爰片久久毛片美女图片| 亚洲美女黄色片| 中文字幕亚洲综合| 国产精品视频一| 国产精品黄色影片导航在线观看| 欧美另类老肥妇| 国产精品美女视频网站| 欧美在线视频免费播放| 国产综合视频在线观看| 国产亚洲精品美女久久久| 97在线精品国自产拍中文| 亚洲第一区中文字幕| 亚洲最大福利视频网站| 色综合天天狠天天透天天伊人| 日韩风俗一区 二区| 色999日韩欧美国产| 亚洲另类xxxx| 日韩黄色高清视频| 国产婷婷成人久久av免费高清| 欧美日韩中文字幕| 国产精品第一第二| 日韩av影院在线观看| 亚洲精品国精品久久99热一| 日韩电影免费在线观看| 亚洲国产高潮在线观看| 成人午夜小视频| 中文字幕精品影院| 国产97在线|日韩| 久久人人爽人人爽爽久久| 国产成人高潮免费观看精品| 欧美日韩裸体免费视频| 国产成人精品免费久久久久| 久久精品视频亚洲| 亚洲午夜激情免费视频| 国模私拍一区二区三区| 国产在线观看一区二区三区| 91在线播放国产| 庆余年2免费日韩剧观看大牛| 日韩视频在线免费| 欧美多人乱p欧美4p久久| 91在线观看免费观看| 亚洲人精品午夜在线观看| 久久91超碰青草是什么| 日韩欧美综合在线视频| 992tv成人免费影院| 国产精品自拍偷拍| 少妇久久久久久| 欧美日韩国产成人高清视频| 国产在线观看不卡| 成人97在线观看视频| 精品国产精品自拍| 久久人人爽人人爽人人片av高清| 欧美最猛性xxxxx(亚洲精品)| 亚洲成人精品在线| 97久久久免费福利网址| 欧美不卡视频一区发布| 欧美日韩国产丝袜美女| 成人av资源在线播放| 欧美日韩精品国产| 精品视频—区二区三区免费| 亚洲精品之草原avav久久| 亚洲精品国产精品自产a区红杏吧| 日韩久久精品电影| 国产精品第七影院| 国产精品一区二区三区久久久| 欧美成人免费全部观看天天性色| 伊人久久五月天| 成人黄色影片在线| 欧美激情欧美激情| 欧美一级bbbbb性bbbb喷潮片| 日韩毛片中文字幕|