C#如何实现对sql server数据库的增删改查

所属分类: 软件编程 / C#教程 阅读数: 61
收藏 0 赞 0 分享

一个专门实现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数据库的增删改查的实现代码,希望对大家的学习有所帮助。

更多精彩内容其他人还在看

C#使用oledb读取excel表格内容到datatable的方法

这篇文章主要介绍了C#使用oledb读取excel表格内容到datatable的方法,涉及C#操作oledb及datatable的相关技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

C#使用oledb操作excel文件的方法

这篇文章主要介绍了C#使用oledb操作excel文件的方法,涉及C#中oledb操作excel的相关技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

C#使用IHttpModule接口修改http输出的方法

这篇文章主要介绍了C#使用IHttpModule接口修改http输出的方法,涉及C#操作IHttpModule接口的相关技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

C#给图片加水印的简单实现方法

这篇文章主要介绍了C#给图片加水印的简单实现方法,涉及C#操作图片的相关技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

C#生成随机数的方法小结

这篇文章主要介绍了C#生成随机数的方法,实例总结了C#生成随机数的相关技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

C#使用jQuery实现无刷新评论提交的方法

这篇文章主要介绍了C#使用jQuery实现无刷新评论提交的方法,涉及C#结合jQuery进行Ajax操作的相关技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

C#读取中文文件出现乱码的解决方法

这篇文章主要介绍了C#读取中文文件出现乱码的解决方法,涉及C#中文编码的操作技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

C#图像对比度调整的方法

这篇文章主要介绍了C#图像对比度调整的方法,涉及C#实现图像对比度操作的相关技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

C#图像灰度级拉伸的方法

这篇文章主要介绍了C#图像灰度级拉伸的方法,涉及C#灰度操作的相关技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

C#图像线性变换的方法

这篇文章主要介绍了C#图像线性变换的方法,涉及C#操作图像线性变换的相关技巧,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多