SqlHelper 工具类
2022/1/1 19:08:06
本文主要是介绍SqlHelper 工具类,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
SqlHelper 是一个自定义的工具类 将对数据库的操作封装起来 方便进行调用;
-
创建类库
- 右键解决方案-新建项目-选择 类库(.NET Framework) - 命名 Common
- 删除 初始化类,新建类 - 命名 SqlHelper
-
引用该类库
- 右键引用-添加引用-项目
-
获取数据库连接
-
string sqlcon = "Data Source=.;Initial Catalog=MyCar;User ID=sa;Password=1234";
-
-
查询封装
-
返回受影响行数封装(增删改)
-
SqlHelper类
-
public class SqlHelper { //获取数据库连接 static string sqlStr = ConfigurationManager.ConnectionStrings["conStr"].ConnectionString; /// <summary> /// 获取数据集 /// </summary> /// <param name="sql">要执行的Sql语句</param> /// <param name="param">Sql语句中的参数</param> /// <returns>结果集表</returns> public static DataTable ExecuteDataTable(string sql,params SqlParameter [] param) { DataTable table = new DataTable(); using (SqlConnection con =new SqlConnection(sqlStr)) { SqlDataAdapter adapter = new SqlDataAdapter(sql,con); // 不为空 就添加参数 if(param.Length != 0) { adapter.SelectCommand.Parameters.AddRange(param); } adapter.Fill(table); } return table; } /// <summary> /// 返回受影响行数 /// </summary> /// <param name="sql"></param> /// <param name="param"></param> /// <returns></returns> public static int ExecuteNonquery(string sql, params SqlParameter[] param) { int i = -1; using (SqlConnection con = new SqlConnection(sqlStr)) { con.Open(); SqlCommand com = new SqlCommand(sql,con); com.Parameters.AddRange(param); i = com.ExecuteNonQuery(); } return i; } /// <summary> /// 返回首行首列 /// </summary> /// <param name="sql">sql语句</param> /// <param name="param">sql中的参数</param> /// <returns></returns> public static object ExecuteScalar(string sql,params SqlParameter[] param) { using (SqlConnection con = new SqlConnection(sqlStr)) { con.Open(); SqlCommand com = new SqlCommand(sql,con); if(param.Length != 0) { com.Parameters.AddRange(param); } return com.ExecuteScalar(); } } /// <summary> /// 流方式返回数据 /// </summary> /// <param name="sql"></param> /// <param name="param"></param> /// <returns></returns> public static SqlDataReader ExecuteReader(string sql,params SqlParameter[] param) { SqlDataReader reader; SqlConnection con = new SqlConnection(sqlStr); using (SqlCommand com = new SqlCommand(sql, con)) { com.Parameters.AddRange(param); con.Open(); //CommandBehavior.CloseConnection //如果关闭SqlDataReader,SqlConnection也随之关闭 reader = com.ExecuteReader(CommandBehavior.CloseConnection); } return reader; } }
-
表现类
-
/// <summary> /// 通过id删用户 /// </summary> /// <param name="id"></param> /// <returns></returns> public int deleteUserById(int id) { string sql = "delete from Student where sid = @id"; SqlParameter p = new SqlParameter("@id",id); return SqlHelper.ExecuteNonquery(sql,p); } //初始化数据 public DataTable initDataTable() { label1.Text = "总人数:"+initDataTableCount(); string sql = " select * from Student"; return SqlHelper.ExecuteDataTable(sql); } //显示总人数 public string initDataTableCount() { string sql = "select COUNT(*) from Student"; return SqlHelper.ExecuteScalar(sql).ToString(); } //流方式显示结果集 private void button1_Click_1(object sender, EventArgs e) { string sql = "select * from Student"; SqlDataReader reader = SqlHelper.ExecuteReader(sql); while (reader.Read()) { Console.WriteLine(reader["sName"].ToString()); } reader.Close(); }
-
这篇关于SqlHelper 工具类的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-04百万架构师第六课:设计模式:策略模式及模板模式
- 2025-01-04百万架构师第七课:设计模式:装饰器模式及观察者模式
- 2025-01-04适用于企业管理的协作工具API推荐
- 2025-01-04挑战16:被限流的CPU
- 2025-01-03企业在选择工具时,如何评估其背后的技术团队
- 2025-01-03Angular中打造动态多彩标签组件的方法
- 2025-01-03Flask过时了吗?FastAPI才是未来?
- 2025-01-0311个每位开发者都应知道的免费实用网站
- 2025-01-03从REST到GraphQL:为什么以及我是如何完成转型的
- 2025-01-03掌握RAG:从单次问答到连续对话