using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
namespace ZYBSqlHelper
{
public class SqlHelper
{
// 摘要:
// 获取配置文件中的链接连接数据库的字符串。
private static readonly string conStr = ConfigurationManager.ConnectionStrings["mssqlserver"].ConnectionString;
#region ExecuteNonQuery
public static int ExecuteNonQuery(string sql, CommandType comType, params SqlParameter[] pms)
{
using (SqlConnection con = new SqlConnection(conStr))
{
using (SqlCommand cmd = new SqlCommand(sql, con))
{
cmd.CommandType = comType;
if (pms != null)
{
cmd.Parameters.AddRange(pms);
}
con.Open();
return cmd.ExecuteNonQuery();
}
}
}
#endregion
// 摘要:
// 创建作为当前实例副本的新对象。
//
// 返回结果:
// 作为此实例副本的新对象。
public static object ExecuteScalar(string sql, CommandType comType, params SqlParameter[] pms)
{
using (SqlConnection con=new SqlConnection(conStr))
{
using (SqlCommand cmd=new SqlCommand(sql,con))
{
cmd.CommandType = comType;
if (pms!=null)
{
cmd.Parameters.AddRange(pms);
}
con.Open();
return cmd.ExecuteScalar();
}
}
}
// 摘要:
// 执行ExecuteReader方法,对数据进行了读取操作
//
//
// 参数:
// sql:
// 要传入的sql语句
// comType:
// 选择执行的类型sql语句 或 储存过程
// pms:
// 对可变参数的替换操作
//
//
// 返回结果:
// System.Data.SqlClient.SqlDataReader 对象。
public static SqlDataReader ExecuteReader(string sql, CommandType comType, params SqlParameter[] pms)
{
SqlConnection con = new SqlConnection(conStr);
using (SqlCommand cmd=new SqlCommand(sql,con))
{
cmd.CommandType = comType;
if (pms!=null)
{
cmd.Parameters.AddRange(pms);
}
try
{
con.Open();
return cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
}
catch
{
con.Close();
con.Dispose();
throw;
}
}
}
}
}