/// <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开始!!!!
分享到:
相关推荐
微软官方C# SqlHelper类 ,内带有注释说明,供大家参考
自己改进的sqlhelper类(c#),修改一下命名空间就可以用在项目里。
C# sqlhelper多类库C# sqlhelper多类库C# sqlhelper多类库
☆ 说明如下:☆ 自编译版本 SQLHelper 2.0 (C#); 去掉注释,精简代码体积; 代码书写更加规范; 命名空间:Microsoft.ApplicationBlocks.Data;
某个培训机构写的SQLHelper,现在分享出来,基于三层架构写的SQLHelper文件,包含标准SQL,参数化和存储过程
sqlHelper 工具类,只支持 sqlserver ,不支持其他数据库, 仅仅是整理了一下, 可以应用到项目中
SqlHelper,SqlHelper C#SQL工具包
C# 连接数据库的类SQLHelper C# 连接数据库的类SQLHelper C# 连接数据库的类SQLHelper
c# SqlHelper类提供对 SQL语句的增删改查 下载
常用的SQLHelper(C#)类,有很详细中文注释,可供大家学习使用
SqlHelper 微软官方sql操作类C#源码 非常实用 易用
含有事务操作的sqlhelper类C#,略经修改,希望对大家有用
SQLHelper 三层架构 C# 开发技术 详解 数据访问层
C# Sqlhelper 简单的sqlhelper 类
翻箱底时找到了SQLHelper.cs,微软官方推出的sql server数据访问模块,仔细看了下,非阉割的版本(我一字没改),英文注释,功能齐全(一些教程上没介绍到的功能这里面也有),推荐刚学ASP.NET的新手下载来研究研究...
微软C# SqlHelper.cs 源码
C#访问数据库类,包括多种数据库和事务处理等。
关于微软C#的SQL帮助文件,不大,文件名SQLHelper.cs,希望对于使用C#的朋友有所帮助!
微软SQLHelper类源码,C#版 // =============================================================================== // Microsoft Data Access Application Block for .NET // ...