一个专门实现sql server数据库的增删改查,以及将查询的结果返回成表格等功能,分享代码如下
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data.SqlClient;//第一步:引用与sql相关的命名空间 using System.Data;//引用表的命名空间 //行注释 ///段落注释 /// <summary> ///第二步: 把命名空间删掉,使得我们在以后的开发中不用去创建一个sqlhelper类的对象和引用它的命名空间。实现直接调用 /// </summary> //第三步:在class前面加上一个public 实现我们可以在dal的任何地方中去调用它。 //public 叫公共类 它的访问权限是最大的。 如果在class前面加上了它的话,那么这个类我们可以在当前的类库中任意调用。 public class SqlHelper { //第四步:我们想要直接调用sqlHelper类,删除命名空间是不够的,我们还要把里面的方法和字段全部设置为静态。 public static string connstr = "server=.;uid=sa;pwd=sa;database=rj1301";//公共的静态的 连接字符串 public static int ExecuteScalar(string cmdText, params SqlParameter[] pms) { //params:不限长度的数组 //第一步:创建数据库对象连接 SqlConnection conn = new SqlConnection(connstr); //第二步:打开数据库 conn.Open(); //第三步:创建数据库命令对象和数据库查询语句 SqlCommand cmd = new SqlCommand(cmdText, conn); //第四步:创建参数对象 //cmd.Parameters.Add(pms);//如果我们在这里直接放入pms数组,那么cmd添加进去的都是SqlParameter,而不是具体的参数。 // 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)//第一个参数:你的数据类型 //第二个参数是值 //第三个参数:in 在什么什么里面 //第四个参数 数组的名称 { if (item != null) { cmd.Parameters.Add(item); } } } //第五步:返回结果 int i = Convert.ToInt32(cmd.ExecuteScalar()); //第六步:关闭数据库 conn.Close(); //第六步:把最终的结果返回到外面去 return i; } public static int ExecuteNonQuery(string cmdText, params SqlParameter[] pms) { //params:不限长度的数组 //第一步:创建数据库对象连接 SqlConnection conn = new SqlConnection(connstr); //第二步:打开数据库 conn.Open(); //第三步:创建数据库命令对象和数据库查询语句 SqlCommand cmd = new SqlCommand(cmdText, conn); //第四步:创建参数对象 //cmd.Parameters.Add(pms);//如果我们在这里直接放入pms数组,那么cmd添加进去的都是SqlParameter,而不是具体的参数。 // 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)//第一个参数:你的数据类型 //第二个参数是值 //第三个参数:in 在什么什么里面 //第四个参数 数组的名称 { if (item != null) { cmd.Parameters.Add(item); } } } //第五步:返回结果 int i = Convert.ToInt32(cmd.ExecuteNonQuery()); //第六步:关闭数据库 conn.Close(); //第六步:把最终的结果返回到外面去 return i; } //返回一张表 public static DataTable GetTable(string cmdText, params SqlParameter[] pms) { //params:不限长度的数组 //第一步:创建数据库对象连接 SqlConnection conn = new SqlConnection(connstr); //第二步:打开数据库 conn.Open(); //第三步:创建数据库命令对象和数据库查询语句 SqlCommand cmd = new SqlCommand(cmdText, conn); //第四步:创建参数对象 //cmd.Parameters.Add(pms);//如果我们在这里直接放入pms数组,那么cmd添加进去的都是SqlParameter,而不是具体的参数。 // 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)//第一个参数:你的数据类型 //第二个参数是值 //第三个参数:in 在什么什么里面 //第四个参数 数组的名称 { if (item != null) { cmd.Parameters.Add(item); } } } //5. SqlDataAdapter是.net中用于存放数组库里面取出来的数 相当于我们现实生活中的容器 SqlDataAdapter sda = new SqlDataAdapter(cmd); //6.去创建一个适配器 用来接受容器的 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); //第二步:打开数据库 conn.Open(); //第三步:创建数据库命令对象和数据库查询语句 SqlCommand cmd = new SqlCommand(cmdText, conn); //第四步:创建参数对象 //cmd.Parameters.Add(pms);//如果我们在这里直接放入pms数组,那么cmd添加进去的都是SqlParameter,而不是具体的参数。 // 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)//第一个参数:你的数据类型 //第二个参数是值 //第三个参数:in 在什么什么里面 //第四个参数 数组的名称 { if (item != null) { cmd.Parameters.Add(item); } } } SqlDataReader sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);//把数据取出来以游标的形式放入sdr return sdr; } }
以上就是对sql server数据库的增删改查的实现代码,希望对大家的学习有所帮助。