国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

C# 封裝的DBHelper

2019-11-17 02:38:09
字體:
來源:轉載
供稿:網友

C# 封裝的DBHelper

內容不全,以后會添加。

C#與 SQL 鏈接。

1.鏈接字符串配置信息保存于App.config中

  <!--連接數據庫字符串-->  <connectionStrings>    <add name="DBStrConn" connectionString="Data Source=.; initial Catalog=數據庫; user id=用戶名; passWord=密碼"/>  </connectionStrings>

2.添加 System.configuration 引用

3.在DBHelper中獲取鏈接字符串

/* * 獲取連接數據庫字符串 * 此字符串存在App.config應用配置文件中*/PRivate static string strConnection = ConfigurationManager.ConnectionStrings["DBStrConn"].ConnectionString;  //DBStrConn為在App.config中的"name"名

4.1 ExecuteNonQuery方法執行 插入、修改、刪除

public static int ToInUpDel_ExecuteNonQuery(string sql){    //連接命令    using (SqlConnection conn = new SqlConnection(strConnection))    {       conn.Open();   //打開連接       using (SqlCommand cmd = conn.CreateCommand())       {          //執行sql語句          cmd.CommandText = sql;          //返回受影響的行數          return cmd.ExecuteNonQuery();       }    }} 

4.2 ExecuteScalar方法 執行 查詢

public static int ToSelect_ExecuteScalar(string sql){    using (SqlConnection conn = new SqlConnection(strConnection))    {        conn.Open();        using (SqlCommand cmd = conn.CreateCommand())        {            cmd.CommandText = sql;            //返回結果            return (int)cmd.ExecuteScalar();        }    }}

4.3 DataTable 用來查詢結果比較少的sql

public static DataTable ExecuteDataTable(string sql){       using (SqlConnection conn = new SqlConnection(strConnection))       {             conn.Open();             using (SqlCommand cmd = conn.CreateCommand())             {                    cmd.CommandText = sql;                    SqlDataAdapter adapter = new SqlDataAdapter(cmd);                    DataSet dataset = new DataSet();                    adapter.Fill(dataset);                    return dataset.Tables[0];             }       } }       

4.4 SqlDataReader 需要手動關閉

public static SqlDataReader ExecuteReader(string sql){    SqlConnection conn = new SqlConnection(strConnection);    SqlCommand cmd = new SqlCommand(sql,conn);    try    {  conn.Open();  SqlDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);  //CommandBehavior.CloseConnection 在關閉DataReader的時候自動關閉Connection  return reader;    }    catch(SqlException ex)    {  throw ex;    } }

-------------------------------------------分割線-----------------------------------------------

---------------------------------------以下是修改的--------------------------------------------

-----------------------------------修改時間:2015.3.2----------------------------------------

5.1 執行insert/update/delete 帶參數

public static int ExecuteNonQuery(string sql, CommandType cmdType, params SqlParameter[] pms){    using (SqlConnection conn = new SqlConnection(connStr))    {using (SqlCommand cmd = new SqlCommand(sql, conn)){    cmd.CommandType = cmdType;  //設置當前執行的是存儲過程還是帶參數的sql語句    if (pms != null)    {cmd.Parameters.AddRange(pms);    }    conn.Open();    return cmd.ExecuteNonQuery();}    }}

5.2 執行select(執行返回單個值的方法) 帶參數

public static object ExecuteScalar(string sql, CommandType cmdType, params SqlParameter[] pms){    using (SqlConnection conn = new SqlConnection(connStr))    {using (SqlCommand cmd = new SqlCommand(sql, conn)){    cmd.CommandType = cmdType;    if (pms != null)    {cmd.Parameters.AddRange(pms);    }    conn.Open();    return cmd.ExecuteScalar();}    }}

5.3 返回SqlDataReader的方法 帶參數

public static SqlDataReader ExecuteReader(string sql, CommandType cmdType, params SqlParameter[] pms){    SqlConnection conn = new SqlConnection(connStr);    using (SqlCommand cmd = new SqlCommand(sql, conn))    {cmd.CommandType = cmdType;if (pms != null){    cmd.Parameters.AddRange(pms);}try{    conn.Open();    return cmd.ExecuteReader(CommandBehavior.CloseConnection);}catch{    conn.Close();    conn.Dispose();    throw;}    }    }

5.4 返回DataTable的方法 帶參數

public static DataTable ExecuteDataTable(string sql, CommandType cmdType, params SqlParameter[] pms){    DataTable dt = new DataTable();    using (SqlDataAdapter adapter = new SqlDataAdapter(sql, connStr))    {adapter.SelectCommand.CommandType = cmdType;if (pms != null){    adapter.SelectCommand.Parameters.AddRange(pms);}adapter.Fill(dt);return dt;    }}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 三原县| 舒城县| 金山区| 金川县| 肃宁县| 曲阜市| 平阴县| 大新县| 会宁县| 汉川市| 特克斯县| 册亨县| 武清区| 朝阳市| 喜德县| 田林县| 高州市| 米易县| 巫溪县| 金塔县| 通江县| 阳江市| 福州市| 长宁区| 彩票| 郸城县| 安宁市| 嘉兴市| 望谟县| 天津市| 凉山| 芜湖县| 外汇| 南阳市| 永福县| 峡江县| 满城县| 巨野县| 大港区| 衡山县| 星座|