博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
重识SQLHelper
阅读量:2063 次
发布时间:2019-04-29

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

今天对SQLHelper有了更深入的认识。

public class SQLHelper//数据库助手类    {        private SqlConnection conn = null;//开头先定义连接,初始为空        private SqlCommand cmd = null;//命令,初始为空        private SqlDataReader sdr = null;//reader,初始为空        public SQLHelper()//构造函数        {            string connStr = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;//获取配置文件中的connStr的字符串            conn = new SqlConnection(connStr);//给conn赋值,连接数据库        }        private SqlConnection GetConn()//把连接打开的方法        {            if (conn.State == ConnectionState.Closed)//如果状态关闭            {                conn.Open();            }            return conn;        }        ///         /// 该方法传入不带参数的SQL的增删改语句或者存储过程。        ///         /// SQL语句        /// 
返回更新的记录数
public int ExecuteNonQuery(string cmdText,CommandType ct)//第一个参数是SQL语句,第二个参数是命令类型,是否是存储过程。 { int res = 0; try { SqlCommand 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增删改语句 /// 参数集合 ///
public int ExecuteNonQuery(string cmdText, SqlParameter[] paras,CommandType ct) { int res = 0; using (cmd = new SqlCommand(cmdText, GetConn())) { cmd.CommandType = ct; cmd.Parameters.AddRange(paras);//参数 res = cmd.ExecuteNonQuery(); } return res; } /// /// 该方法执行不带参数的SQL查询语句或者存储过程 /// /// SQL查询语句或者存储过程 ///
public DataTable ExcuteQuery(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; } /// /// 带参数的查询语句或者存储过程 /// /// /// ///
public DataTable ExcuteQuery(string cmdText, SqlParameter[] paras,CommandType ct) { DataTable dt = new DataTable(); cmd.CommandType = ct; cmd = new SqlCommand(cmdText, GetConn()); cmd.Parameters.AddRange(paras); using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection)) { dt.Load(sdr); } return dt; } }
 

共分为四类:int类型的是增,删,更新操作。

                                而int类型又分为带参数和不带参数

                    datatable类型是查询操作

                                而datatable又分为带参数和不带参数

转载地址:http://yself.baihongyu.com/

你可能感兴趣的文章
嵌入式 知识积累(五)之硬件工程师具备基本技能
查看>>
中小型园区网络的设计与实现 (一)
查看>>
别人的难题,就是你的价值。
查看>>
中小型园区网络的设计与实现 (二)
查看>>
中小型园区网络的设计与实现 (三)
查看>>
VLAN与子网划分区别
查看>>
Cisco Packet Tracer教程
查看>>
01. 开篇:组建小型局域网
查看>>
02. 交换机的基本配置和管理
查看>>
03. 交换机的Telnet远程登陆配置
查看>>
04. 交换机的端口聚合配置
查看>>
05. 交换机划分Vlan配置
查看>>
06. 三层交换机实现VLAN间路由
查看>>
07. 快速生成树协议
查看>>
08. 路由器的基本配置和Talent配置
查看>>
09. 路由器单臂路由配置
查看>>
10. 路由器静态路由配置
查看>>
路由器动态ip获取不到的处理办法
查看>>
微信小程序-调用-腾讯视频-解决方案
查看>>
giuhub搭建及常用操作
查看>>