C#如何實現(xiàn)對sql server數(shù)據(jù)庫的增刪改查
更新時間:2022年01月24日 16:09:10 作者:我只是一只小小鳥
本文的主要內(nèi)容是C#實現(xiàn)對sql server數(shù)據(jù)庫的增刪改查,示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
一個專門實現(xiàn)sql server數(shù)據(jù)庫的增刪改查,以及將查詢的結(jié)果返回成表格等功能,分享代碼如下
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data.SqlClient;//第一步:引用與sql相關(guān)的命名空間 using System.Data;//引用表的命名空間 //行注釋 ///段落注釋 /// <summary> ///第二步: 把命名空間刪掉,使得我們在以后的開發(fā)中不用去創(chuàng)建一個sqlhelper類的對象和引用它的命名空間。實現(xiàn)直接調(diào)用 /// </summary> //第三步:在class前面加上一個public 實現(xiàn)我們可以在dal的任何地方中去調(diào)用它。 //public 叫公共類 它的訪問權(quán)限是最大的。 如果在class前面加上了它的話,那么這個類我們可以在當前的類庫中任意調(diào)用。 public class SqlHelper { //第四步:我們想要直接調(diào)用sqlHelper類,刪除命名空間是不夠的,我們還要把里面的方法和字段全部設置為靜態(tài)。 public static string connstr = "server=.;uid=sa;pwd=sa;database=rj1301";//公共的靜態(tài)的 連接字符串 public static int ExecuteScalar(string cmdText, params SqlParameter[] pms) { //params:不限長度的數(shù)組 //第一步:創(chuàng)建數(shù)據(jù)庫對象連接 SqlConnection conn = new SqlConnection(connstr); //第二步:打開數(shù)據(jù)庫 conn.Open(); //第三步:創(chuàng)建數(shù)據(jù)庫命令對象和數(shù)據(jù)庫查詢語句 SqlCommand cmd = new SqlCommand(cmdText, conn); //第四步:創(chuàng)建參數(shù)對象 //cmd.Parameters.Add(pms);//如果我們在這里直接放入pms數(shù)組,那么cmd添加進去的都是SqlParameter,而不是具體的參數(shù)。 // int[] ii = new int[5] { 1,2,3,4,5 }; if (pms != null) { //for (int i = 0; i <pms.Length; i++) //{ // if (pms[i]!=null) // { // cmd.Parameters.Add(pms[i]); // } //} foreach (SqlParameter item in pms)//第一個參數(shù):你的數(shù)據(jù)類型 //第二個參數(shù)是值 //第三個參數(shù):in 在什么什么里面 //第四個參數(shù) 數(shù)組的名稱 { if (item != null) { cmd.Parameters.Add(item); } } } //第五步:返回結(jié)果 int i = Convert.ToInt32(cmd.ExecuteScalar()); //第六步:關(guān)閉數(shù)據(jù)庫 conn.Close(); //第六步:把最終的結(jié)果返回到外面去 return i; } public static int ExecuteNonQuery(string cmdText, params SqlParameter[] pms) { //params:不限長度的數(shù)組 //第一步:創(chuàng)建數(shù)據(jù)庫對象連接 SqlConnection conn = new SqlConnection(connstr); //第二步:打開數(shù)據(jù)庫 conn.Open(); //第三步:創(chuàng)建數(shù)據(jù)庫命令對象和數(shù)據(jù)庫查詢語句 SqlCommand cmd = new SqlCommand(cmdText, conn); //第四步:創(chuàng)建參數(shù)對象 //cmd.Parameters.Add(pms);//如果我們在這里直接放入pms數(shù)組,那么cmd添加進去的都是SqlParameter,而不是具體的參數(shù)。 // int[] ii = new int[5] { 1,2,3,4,5 }; if (pms != null) { //for (int i = 0; i <pms.Length; i++) //{ // if (pms[i]!=null) // { // cmd.Parameters.Add(pms[i]); // } //} foreach (SqlParameter item in pms)//第一個參數(shù):你的數(shù)據(jù)類型 //第二個參數(shù)是值 //第三個參數(shù):in 在什么什么里面 //第四個參數(shù) 數(shù)組的名稱 { if (item != null) { cmd.Parameters.Add(item); } } } //第五步:返回結(jié)果 int i = Convert.ToInt32(cmd.ExecuteNonQuery()); //第六步:關(guān)閉數(shù)據(jù)庫 conn.Close(); //第六步:把最終的結(jié)果返回到外面去 return i; } //返回一張表 public static DataTable GetTable(string cmdText, params SqlParameter[] pms) { //params:不限長度的數(shù)組 //第一步:創(chuàng)建數(shù)據(jù)庫對象連接 SqlConnection conn = new SqlConnection(connstr); //第二步:打開數(shù)據(jù)庫 conn.Open(); //第三步:創(chuàng)建數(shù)據(jù)庫命令對象和數(shù)據(jù)庫查詢語句 SqlCommand cmd = new SqlCommand(cmdText, conn); //第四步:創(chuàng)建參數(shù)對象 //cmd.Parameters.Add(pms);//如果我們在這里直接放入pms數(shù)組,那么cmd添加進去的都是SqlParameter,而不是具體的參數(shù)。 // int[] ii = new int[5] { 1,2,3,4,5 }; if (pms != null) { //for (int i = 0; i <pms.Length; i++) //{ // if (pms[i]!=null) // { // cmd.Parameters.Add(pms[i]); // } //} foreach (SqlParameter item in pms)//第一個參數(shù):你的數(shù)據(jù)類型 //第二個參數(shù)是值 //第三個參數(shù):in 在什么什么里面 //第四個參數(shù) 數(shù)組的名稱 { if (item != null) { cmd.Parameters.Add(item); } } } //5. SqlDataAdapter是.net中用于存放數(shù)組庫里面取出來的數(shù) 相當于我們現(xiàn)實生活中的容器 SqlDataAdapter sda = new SqlDataAdapter(cmd); //6.去創(chuàng)建一個適配器 用來接受容器的 DataSet ds = new DataSet(); sda.Fill(ds,"aa"); conn.Close(); DataTable dt = ds.Tables["aa"]; return dt; } public static SqlDataReader GetReader(string cmdText, params SqlParameter[] pms) { SqlConnection conn = new SqlConnection(connstr); //第二步:打開數(shù)據(jù)庫 conn.Open(); //第三步:創(chuàng)建數(shù)據(jù)庫命令對象和數(shù)據(jù)庫查詢語句 SqlCommand cmd = new SqlCommand(cmdText, conn); //第四步:創(chuàng)建參數(shù)對象 //cmd.Parameters.Add(pms);//如果我們在這里直接放入pms數(shù)組,那么cmd添加進去的都是SqlParameter,而不是具體的參數(shù)。 // int[] ii = new int[5] { 1,2,3,4,5 }; if (pms != null) { //for (int i = 0; i <pms.Length; i++) //{ // if (pms[i]!=null) // { // cmd.Parameters.Add(pms[i]); // } //} foreach (SqlParameter item in pms)//第一個參數(shù):你的數(shù)據(jù)類型 //第二個參數(shù)是值 //第三個參數(shù):in 在什么什么里面 //第四個參數(shù) 數(shù)組的名稱 { if (item != null) { cmd.Parameters.Add(item); } } } SqlDataReader sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);//把數(shù)據(jù)取出來以游標的形式放入sdr return sdr; } }
以上就是對sql server數(shù)據(jù)庫的增刪改查的實現(xiàn)代碼,希望對大家的學習有所幫助。
相關(guān)文章
C#設計模式之ChainOfResponsibility職責鏈模式解決真假美猴王問題實例
這篇文章主要介紹了C#設計模式之ChainOfResponsibility職責鏈模式解決真假美猴王問題,簡單說明了責任鏈模式的概念,并結(jié)合《西游記》中真假美猴王故事背景為實例分析了責任鏈模式的具體使用技巧,需要的朋友可以參考下2017-09-09在C#中創(chuàng)建和讀取XML文件的實現(xiàn)方法
項目中需要將前臺頁面中的信息保存下來并存儲為xml文件格式到數(shù)據(jù)庫中去。因此我先在這里通過一個小實例來學習xml的創(chuàng)建與讀取2013-09-09C#調(diào)用百度API實現(xiàn)活體檢測的方法
這篇文章主要給大家介紹了關(guān)于C#調(diào)用百度API實現(xiàn)活體檢測的方法,文中通過示例代碼介紹的非常詳細,對大家學習或者使用C#具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧2019-09-09C#函數(shù)式編程中的遞歸調(diào)用之尾遞歸詳解
這篇文章主要介紹了C#函數(shù)式編程中的遞歸調(diào)用詳解,本文講解了什么是尾遞歸、尾遞歸的多種方式、尾遞歸的代碼實例等內(nèi)容,需要的朋友可以參考下2015-01-01