SQLHelper.cs

using System;
using System.Data;
using System.Configuration;
using System.Data.SqlClient; namespace DAL
{
public class SQLHelper
{
#region 私有字段
//获取连接字符串
private static string ConString = ConfigurationManager.ConnectionStrings["ConString"].ConnectionString;
//创建连接对象
public static SqlConnection con = null;
//创建命令执行对象
public static SqlCommand cmd = null;
//创建向前只读数据集
public static SqlDataReader sdr = null;
//创建数据适配器
public static SqlDataAdapter adp = null;
//创建前后读取数据集
public static DataTable dt = null;
//声明一个Object对象
public static object obj = null;
#endregion #region 创建一个打开后的数据库连接对象
/// <summary>
/// 创建一个打开后的数据库连接对象
/// </summary>
/// <returns></returns>
private static SqlConnection GetOpenConnection()
{
//实例化出一个链接对象
con = new SqlConnection(ConString);
//判断是否为关闭状态
if (con.State == ConnectionState.Closed)
con.Open();
return con;
}
#endregion #region ExecuteTable
/// <summary>
/// 返回相应的数据表(无参数)
/// </summary>
/// <param name="text">要执行的语句,SQL语句或者是存储过程</param>
/// <param name="type">要执行的类型,SQL语句或者是存储过程</param>
/// <returns></returns>
public static DataTable ExecuteTable(string text, CommandType type)
{
dt = new DataTable();
using (adp = new SqlDataAdapter(text, GetOpenConnection()))
{
try
{
adp.SelectCommand.CommandType = type;
adp.Fill(dt);
}
catch (Exception ex)
{
throw ex;
}
}
return dt;
} /// <summary>
/// 返回相应的数据表(重载,使用单个参数)
/// </summary>
/// <param name="text">要执行的语句,SQL语句或者是存储过程</param>
/// <param name="para">使用的单个参数</param>
/// <param name="type">要执行的类型,SQL语句或者是存储过程</param>
/// <returns></returns>
public static DataTable ExecuteTable(string text, SqlParameter para, CommandType type)
{
dt = new DataTable();
using (adp = new SqlDataAdapter(text, GetOpenConnection()))
{
try
{
adp.SelectCommand.CommandType = type;
adp.SelectCommand.Parameters.Add(para);
adp.Fill(dt);
}
catch (Exception ex)
{
throw ex;
}
}
return dt;
} /// <summary>
/// 返回相应的数据表(重载,使用参数数组)
/// </summary>
/// <param name="text">要执行的语句,SQL语句或者是存储过程</param>
/// <param name="para">使用的参数数组</param>
/// <param name="type">要执行的类型,SQL语句或者是存储过程</param>
/// <returns></returns>
public static DataTable ExecuteTable(string text, SqlParameter[] paras, CommandType type)
{
dt = new DataTable();
using (adp = new SqlDataAdapter(text, GetOpenConnection()))
{
try
{
adp.SelectCommand.CommandType = type;
adp.SelectCommand.Parameters.AddRange(paras);
adp.Fill(dt);
}
catch (Exception ex)
{
throw ex;
}
}
return dt;
}
#endregion #region ExcuteReader
/// <summary>
/// 返回SqlDataReader数据集(不使用参数)
/// </summary>
/// <param name="text"></param>
/// <param name="type"></param>
/// <returns></returns>
public static SqlDataReader ExcuteReader(string text, CommandType type)
{
using (cmd = new SqlCommand(text, GetOpenConnection()))
{
try
{
cmd.CommandType = type;
sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
}
catch (Exception ex)
{
throw ex;
}
return sdr;
}
} /// <summary>
/// 重载,返回SqlDataReader数据集(使用单个参数)
/// </summary>
/// <param name="text">要执行的SQL语句或是存储过程</param>
/// <param name="para">要使用的单个参数</param>
/// <param name="type">SQL语句或是存储过程</param>
/// <returns></returns>
public static SqlDataReader ExcuteReader(string text, SqlParameter para, CommandType type)
{
using (cmd = new SqlCommand(text, GetOpenConnection()))
{
try
{
cmd.CommandType = type;
cmd.Parameters.Add(para);
sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
}
catch (Exception ex)
{
throw ex;
}
return sdr;
}
} /// <summary>
/// 重载,返回SqlDataReader数据集(使用参数数组)
/// </summary>
/// <param name="text">要执行的SQL语句或是存储过程</param>
/// <param name="para">要使用的单个参数数组</param>
/// <param name="type">SQL语句或是存储过程</param>
/// <returns></returns>
public static SqlDataReader ExcuteReader(string text, SqlParameter[] paras, CommandType type)
{
using (cmd = new SqlCommand(text, GetOpenConnection()))
{
try
{
cmd.CommandType = type;
cmd.Parameters.AddRange(paras);
sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
}
catch (Exception ex)
{
throw ex;
}
return sdr;
}
}
#endregion #region ExcuteScalar
/// <summary>
/// 返回数据集第一行第一列的值
/// </summary>
/// <param name="text"></param>
/// <param name="type"></param>
/// <returns></returns>
public static object ExcuteScalar(string text, CommandType type)
{
using (cmd = new SqlCommand(text, GetOpenConnection()))
{
try
{
cmd.CommandType = type;
obj = cmd.ExecuteScalar();
}
catch (Exception ex)
{
throw ex;
}
}
return obj;
} /// <summary>
/// 重载(返回数据集合第一行第一列的值)
/// </summary>
/// <param name="text">要执行的SQL语句或是存储过程</param>
/// <param name="para">要使用的单个参数</param>
/// <param name="type">SQL语句或者是存储过程</param>
/// <returns></returns>
public static object ExcuteScalar(string text, SqlParameter para, CommandType type)
{
using (cmd = new SqlCommand(text, GetOpenConnection()))
{
try
{
cmd.CommandType = type;
cmd.Parameters.Add(para);
obj = cmd.ExecuteScalar();
}
catch (Exception ex)
{
throw ex;
}
}
return obj;
} /// <summary>
/// 重载(返回数据集合第一行第一列的值)
/// </summary>
/// <param name="text">要执行的SQL语句或是存储过程</param>
/// <param name="para">要使用的参数数组</param>
/// <param name="type">SQL语句或者是存储过程</param>
/// <returns></returns>
public static object ExcuteScalar(string text, SqlParameter[] paras, CommandType type)
{
using (cmd = new SqlCommand(text, GetOpenConnection()))
{
try
{
cmd.CommandType = type;
cmd.Parameters.AddRange(paras);
obj = cmd.ExecuteScalar();
}
catch (Exception ex)
{
throw ex;
}
}
return obj;
}
#endregion #region ExecuteNonQuery
/// <summary>
/// 返回受影响的行数(不使用参数)
/// </summary>
/// <param name="text">要执行的SQL语句或者是存储过程</param>
/// <param name="type">执行SQL语句或者是存储过程</param>
/// <returns></returns>
public static int ExecuteNonQuery(string text, CommandType type)
{
int i = 0;
using (cmd = new SqlCommand(text, GetOpenConnection()))
{
try
{
cmd.CommandType = type;
i = cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
throw ex;
}
}
return i;
} /// <summary>
/// 返回受影响的行数(重载,使用单个参数)
/// </summary>
/// <param name="text">要执行的SQL语句或者是存储过程</param>
/// <param name="para">要使用的单个参数</param>
/// <param name="type">执行SQL语句或者是存储过程</param>
/// <returns></returns>
public static int ExecuteNonQuery(string text, SqlParameter para, CommandType type)
{
int i = 0;
using (cmd = new SqlCommand(text, GetOpenConnection()))
{
try
{
cmd.CommandType = type;
cmd.Parameters.Add(para);
i = cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
throw ex;
}
}
return i;
} /// <summary>
/// 返回受影响的行数(重载,使用参数数组)
/// </summary>
/// <param name="text">要执行的SQL语句或者是存储过程</param>
/// <param name="para">要使用的参数数组</param>
/// <param name="type">执行SQL语句或者是存储过程</param>
/// <returns></returns>
public static int ExecuteNonQuery(string text, SqlParameter[] paras, CommandType type)
{
int i = 0;
using (cmd = new SqlCommand(text, GetOpenConnection()))
{
try
{
cmd.CommandType = type;
cmd.Parameters.AddRange(paras);
i = cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
throw ex;
}
}
return i;
}
#endregion
}
}

  

命名空间待修改:

 namespace Paint.Command //待修改

异常处理待修改(默认为WinForm):

 try
{ }
catch (Exception ex)
{
MessageBox.Show(ex.Message, "提示");
}

C#、WinForm、ASP.NET - SQLHelper.cs的更多相关文章

  1. C#、WinForm、ASP.NET - Md5散列加密

     MD5值概念解释: 转载自:http://free0007.iteye.com/blog/2047163 所 谓MD5,即"Message-Digest Algorithm 5(信息-摘要 ...

  2. .NET各大平台数据列表控件绑定原理及比较(WebForm、Winform、WPF)

    说说WebForm: 数据列表控件: WebForm 下的列表绑定控件基本就是GridView.DataList.Repeater:当然还有其它DropDownList.ListBox等. 它们的共同 ...

  3. MSSQL、C# 、Winform、ASP.NET - 数据库备份与还原模块

    数据库备份还原类: using System; using System.Collections.Generic; using System.Linq; using System.Text; usin ...

  4. ASP.NET、WinForm、C# - 配置文件信息读取 [ Web.config || Appconfig ]

    <configuration> <appSettings> <add key="name" value="HF_Ultrastrong&qu ...

  5. C#、winform、wpf将类控件放进工具箱里

    有时我们需要将vs自带的控件的某一些方法或属性进行一些修改,我们通常会新建一个类来继承它然后对它的方法或属性进行修改,那么我们如何将修改完成的控件类变成可视化控件放到工具箱中便于使用呢? 很简单,只要 ...

  6. WCF 添加 RESTful 支持,适用于 IIS、Winform、cmd 宿主

    You can expose the service in two different endpoints. the SOAP one can use the binding that support ...

  7. Ninject 在 Winform、 Asp.net MVC中连络EntityFramework的应用

    Ninject 在 Winform. Asp.net MVC中连络EntityFramework的应用( 注入同一个DbContext的应用名人名言:科学是老老实实的东西,它要靠许许多多人民的劳动和智 ...

  8. C#、ASP.NET、WinForm - 实现邮件发送的功能

    转载自:http://www.cnblogs.com/mingmingruyuedlut/archive/2011/10/14/2212255.html 发送邮件所用的核心知识点 微软封装好的Mail ...

  9. c#、sql、asp.net、js、ajax、jquery大学知识点笔记

    <table cellSpacing="0" cellPadding="0" width="609" height="470 ...

随机推荐

  1. 递推,大数存储E - Order Count

    Description If we connect 3 numbers with "<" and "=", there are 13 cases: 1) ...

  2. HTML文档类型声明的坑...

    如果发现js莫名其妙的报错(比如demo不报错,自己写的就报错),或者样式显示不正常,一定记得检查HTML页面里面加没加如下文档声明: <!DOCTYPE HTML PUBLIC "- ...

  3. JVM 指令集合

    指令码 助记符 说明 0x00 nop 什么都不做 0x01 aconst_null 将null推送至栈顶 0x02 iconst_m1 将int型-1推送至栈顶 0x03 iconst_0 将int ...

  4. 笔记之Cyclone IV 第一卷第二章Cyclone IV器件的逻辑单元和逻辑阵

    逻辑单元 (LE) 在 Cyclone IV 器件结构中是最小的逻辑单位.LE 紧密且有效的提供了高级功能的逻辑使用.每个 LE 有以下特性 ■ 一个四口输入的查找表 (LUT),以实现四种变量的任何 ...

  5. Hibernate执行sql语句

    Hibernate执行sql语句:BasicServiceImpl basicServiceImpl = new BasicServiceImpl();String hql = "selec ...

  6. hadoop安全模式

      hadoop安全模式在分布式文件系统启动的时候,开始的时候会有安全模式,当分布式文件系统处于安全模式的情况下,文件系统中的内容不允许修改也不允许删除,直到安全模式结束.安全模式主要是为了系统启动的 ...

  7. cocos2dx进阶学习之CCObject

    继承关系 CCObject -> CCCopying 类定义 class CC_DLL CCObject : public CCCopying { public: // object id, C ...

  8. win8安装驱动提示文件哈希值不在指定的目录文件中,此文件可能已损坏或被篡改解决办法

    解决办法: 1. 按快捷键win+R 打开运行命令 2. (请先看完后面的再操作!!)运行输入 shutdown.exe /r /o /f /t 00 3. 点击确定 4. 系统将重启 5. 重启后点 ...

  9. HDU 4679 String

    String Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others) Total Sub ...

  10. 动态规划之一ones

    n给一个整数n,要你找一个值为n的表达式,这个表达式只有1 + * ( ) 够成.并且1不能连续,比如11+1就不合法. n输入n,(1<=n<=10000) n输出最少需要多少个1才能构 ...