SqlHelper V1.0 (C#) 程序员文章站 2024-03-23 16:28:52 ... /// <summary> /// Depiction:数据库助手类V1.0 /// Author:贾琳 /// Create Date: 2011/12/2 9:47:48 /// </summary> using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Configuration; using System.Data.SqlClient; using System.Data; namespace SqlHelper { public sealed class SqlHelper { //静态初始化Sqlhelper private static readonly SqlHelper instance = new SqlHelper(); private SqlCommand cmd = null; private SqlConnection con = null; private SqlDataReader sdr = null; #region 静态构造方法,防止new实例化 /// <summary> /// 静态构造方法,防止new实例化 /// </summary> private SqlHelper() { string strConn = ConfigurationManager.ConnectionStrings["ConnectString"].ConnectionString; con = new SqlConnection(strConn); } #endregion #region 获取Sqlhelper实例的方法 /// <summary> /// 获取Sqlhelper实例的方法 /// </summary> /// <returns>2011年12月2日 By 贾琳</returns> public static SqlHelper GetInstance() { return instance; } #endregion #region 获得数据库连接 /// <summary> /// 获得数据库连接 /// </summary> /// <returns>2011年12月2日 By 贾琳</returns> private SqlConnection GetCnn() { if (con.State == ConnectionState.Closed) { con.Open(); } return con; } #endregion #region 执行带参数的增删改命令 /// <summary> /// 执行带参数的增删改命令 /// </summary> /// <param name="cmmText">Sql语句或存储过程</param> /// <param name="para">参数集合</param> /// <param name="cmmType">命令类型</param> /// <returns>2011年12月2日 By 贾琳</returns> public int ExecuteNonQuery(string cmmText, SqlParameter[] para, CommandType cmmType) { using (cmd = new SqlCommand(cmmText, GetCnn())) { cmd.CommandType = cmmType; cmd.Parameters.AddRange(para); return cmd.ExecuteNonQuery(); } } #endregion #region 执行不带参数的增删改命令 /// <summary> /// 执行不带参数的增删改命令 /// </summary> /// <param name="cmmText">Sql语句或存储过程</param> /// <param name="cmmType">命令类型</param> /// <returns>2011年12月2日 By 贾琳</returns> public int ExecuteNonQuery(string cmmText, CommandType cmmType) { using (cmd = new SqlCommand(cmmText, GetCnn())) { cmd.CommandType = cmmType; return cmd.ExecuteNonQuery(); } } #endregion #region 执行带参数的查询命令 /// <summary> /// 执行带参数的查询命令 /// </summary> /// <param name="cmmText">Sql语句或存储过程</param> /// <param name="para">参数集合</param> /// <param name="cmmType">命令类型</param> /// <returns>2011年12月2日 By 贾琳</returns> public DataTable ExecuteQuery(string cmmText, SqlParameter[] para, CommandType cmmType) { DataTable dt = new DataTable(); cmd = new SqlCommand(cmmText, GetCnn()); cmd.CommandType = cmmType; cmd.Parameters.AddRange(para); using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection)) { dt.Load(sdr); return dt; } } #endregion #region 执行不带参数的查询命令 /// <summary> /// 执行不带参数的查询命令 /// </summary> /// <param name="cmmText">Sql语句或存储过程</param> /// <param name="cmmType">命令类型</param> /// <returns>2011年12月2日 By 贾琳</returns> public DataTable ExecuteQuery(string cmmText, CommandType cmmType) { DataTable dt = new DataTable(); cmd = new SqlCommand(cmmText, GetCnn()); cmd.CommandType = cmmType; using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection)) { dt.Load(sdr); return dt; } } #endregion } } 建立自己的代码库,从SqlHelper V1.0开始!!!! 上一篇: 动态装载外部JavaScript脚本文件 下一篇: 盗墓小说和西高穴:真真假假曹操墓 八卦农业笑话金山旅游 推荐阅读 SqlHelper V1.0 (C#) SqlHelper V1.0 (C#) C#字典Dictionary的用法(注重性能版) Apriori 购物栏挖掘算法的C#实现。原创代码 博客分类: 商业智能和数据挖掘 算法数据挖掘CC++C# C# 年月日 DateTime 转换问题记录(20200811转时间类型) C# 项目依赖性定义在.sln文件 C#生成图形验证码 C#笔记20200811 数据结构与算法(C#)入门 --- 串和数组 C#实现Socket通信(同时监听多客户端)