博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
能用存储过程的DBHelper类
阅读量:4481 次
发布时间:2019-06-08

本文共 4843 字,大约阅读时间需要 16 分钟。

using System;  using System.Collections.Generic;  using System.Linq;  using System.Text;  using System.Data;  using System.Data.SqlClient;    namespace Book.DAL  {      public class DBHelper      {          private SqlConnection conn = null;          private SqlCommand cmd = null;          private SqlDataReader sdr = null;          public DBHelper()          {              string connStr = "data Source=.;database=MYBOOKSHOP;uid=sa;pwd=123";              conn = new SqlConnection(connStr);          }            private SqlConnection GetConn()          {              if (conn.State == ConnectionState.Closed)              {                  conn.Open();              }              return conn;          }            ///           ///  执行不带参数的增删改SQL语句或存储过程          ///           /// 增删改SQL语句或存储过程          /// 命令类型          /// 
public int ExecuteNonQuery(string cmdText, CommandType ct) { int res; try { cmd = new SqlCommand(cmdText, GetConn()); cmd.CommandType = ct; res = cmd.ExecuteNonQuery(); } catch (Exception ex) { throw ex; } finally { if (conn.State == ConnectionState.Open) { conn.Close(); } } return res; } /// /// 执行带参数的增删改SQL语句或存储过程 /// /// 增删改SQL语句或存储过程 /// 命令类型 ///
int值
public int ExecuteNonQuery(string cmdText, SqlParameter[] paras, CommandType ct) { int res; using (cmd = new SqlCommand(cmdText, GetConn())) { cmd.CommandType = ct; cmd.Parameters.AddRange(paras); res = cmd.ExecuteNonQuery(); } return res; } /// /// 执行查询SQL语句或存储过程 /// /// 查询SQL语句或存储过程 /// 命令类型 ///
Table值
public DataTable ExecuteQuery(string cmdText, CommandType ct) { DataTable dt = new DataTable(); cmd = new SqlCommand(cmdText, GetConn()); cmd.CommandType = ct; using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection)) { dt.Load(sdr); } return dt; } /// /// 执行带参数的查询SQL语句或存储过程 /// /// 查询SQL语句或存储过程 /// 参数集合 /// 命令类型 ///
Table值
public DataTable ExecuteQuery(string cmdText, SqlParameter[] paras, CommandType ct) { DataTable dt = new DataTable(); cmd = new SqlCommand(cmdText, GetConn()); cmd.CommandType = ct; cmd.Parameters.AddRange(paras); using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection)) { dt.Load(sdr); } return dt; } /// /// 执行带参数的Scalar查询 /// /// 查询SQL语句或存储过程 /// 参数集合 /// 命令类型 ///
一个int型值
public int ExecuteCheck(string cmdText, SqlParameter[] paras, CommandType ct) { int result; using (cmd = new SqlCommand(cmdText, GetConn())) { cmd.CommandType = ct; cmd.Parameters.AddRange(paras); result = Convert.ToInt32(cmd.ExecuteScalar()); } return result; } } }

 

用法

// 判断用户名密码是否正确              public bool CheckUser(string LoginId, string LoginPwd)              {                  bool check = false;                  string cmdText = "procCheckUser";                  SqlParameter[] parm = new SqlParameter[]                  {                      new SqlParameter("@LoginId",LoginId),                      new SqlParameter("@LoginPwd",LoginPwd)                  };                  int one = dh.ExecuteCheck(cmdText, parm, CommandType.StoredProcedure);                  if (one > 0)                  {                      return true;                  }                  return check;              }                                             //根据图书类型显示该类型所有图书              public DataTable SelectAllByType(int TypeId)              {                  string cmdText = "procSelectAllByType";                  SqlParameter[] parm = new SqlParameter[]{                      new SqlParameter("@TypeId",TypeId)                      };                  dt = dh.ExecuteQuery(cmdText, parm, CommandType.StoredProcedure);                  return dt;              }

 

转载于:https://www.cnblogs.com/vip-ygh/p/3955336.html

你可能感兴趣的文章
jsp中${}是EL表达式的常规表示方式
查看>>
GoldenGate常见问题及处理
查看>>
Android JNI学习(五)——Demo演示
查看>>
SSRS 呈现Barcode Free
查看>>
java快速排序引起的StackOverflowError异常
查看>>
泛函编程(35)-泛函Stream IO:IO处理过程-IO Process
查看>>
-XX:-PrintClassHistogram 按下Ctrl+Break后,打印类的信息
查看>>
mac 安装php redis扩展
查看>>
css3中Animation
查看>>
JS 判断是否是手机端并跳转操作
查看>>
最短路径问题(dijkstra-模板)
查看>>
c# 导出表格 api
查看>>
使用Android NDK以及JNI编写应用
查看>>
学习笔记之-php数组数据结构
查看>>
初学者--bootstrap(六)组件中的下拉菜单----在路上(10)
查看>>
QMetaObject::connectSlotsByName 总结
查看>>
Android 微信支付步骤
查看>>
js操作table
查看>>
JQuery学习系列篇(一)
查看>>
Centos7 minimal 系列之rabbitmq安装(八)
查看>>