C#如何实现对sql server数据库的增删改查
作者:我只是一只小小鸟 时间:2024-01-18 06:49:09
一个专门实现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;
}
}
标签:C#,sql,server,增删改查
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Python 递归式实现二叉树前序,中序,后序遍历
2022-09-22 17:38:32
![](https://img.aspxhome.com/file/2023/7/66777_0s.png)
Python使用内置函数setattr设置对象的属性值
2021-10-09 20:32:44
Python如何获取文件指定行的内容
2023-08-13 09:45:37
python中判断数字是否为质数的实例讲解
2022-02-17 13:19:05
Python操作json的方法实例分析
2022-10-13 10:39:09
![](https://img.aspxhome.com/file/2023/1/95721_0s.png)
小三角的做法与使用
2008-10-08 10:25:00
![](https://img.aspxhome.com/file/uploadpic/20071/200713110649890.gif)
Python OpenCV对图像进行模糊处理详解流程
2022-05-16 03:54:19
![](https://img.aspxhome.com/file/2023/5/86675_0s.png)
python通过txt文件批量安装依赖包的实现步骤
2022-05-10 23:26:14
MySQL数据库优化详解
2024-01-23 12:51:55
pytorch K折交叉验证过程说明及实现方式
2021-01-11 16:05:08
![](https://img.aspxhome.com/file/2023/5/134525_0s.png)
python使用socket实现图像传输功能
2023-08-30 17:10:17
MySQL数据库用户权限管理
2024-01-19 00:29:18
js 返回 utf-8 字符编码是多少个字节, 函数 fUtf8BoundCheck
2010-07-31 18:59:00
python+Django实现防止SQL注入的办法
2022-05-22 13:13:13
SQL Server UPDATE语句的用法详解
2024-01-17 06:39:23
CSS在Internet Explorer 6, 7 和8中的差别
2009-10-26 18:14:00
![](https://img.aspxhome.com/file/UploadPic/up/2009102618430043.gif)
python 移动图片到另外一个文件夹的实例
2022-09-17 07:56:14
mysql实现事务的提交和回滚实例
2024-01-23 04:13:12
mysql巡检脚本(必看篇)
2024-01-22 07:24:54
MySQL 复制表详解及实例代码
2024-01-22 22:49:16