using
System;
using
System.Collections.Generic;
using
System.Configuration;
using
System.Data;
using
System.Data.SqlClient;
using
System.Linq;
using
System.Text;
using
System.Threading.Tasks;
namespace
RuPengWang.DAL
{
public
class
SqlHelper
{
private
static
readonly
string
constr = ConfigurationManager.AppSettings[
"constr"
];
/// <summary>
/// 数据表的增、删、改;
/// </summary>
/// <param name="conn"></param>
/// <param name="sql"></param>
/// <param name="sp"></param>
/// <returns></returns>
public
static
int
ExecuteNonQuery(
string
sql,
params
SqlParameter[] sp)
{
using
(SqlConnection con =
new
SqlConnection(SqlHelper.constr))
{
return
SqlHelper.ExecuteNonQuery(con, sql, sp);
}
}
public
static
int
ExecuteNonQuery(SqlConnection conn,
string
sql,
params
SqlParameter[] ps)
{
using
(SqlCommand cmd =
new
SqlCommand(sql, conn))
{
conn.Open();
cmd.Parameters.AddRange(ps);
return
cmd.ExecuteNonQuery();
}
}
/// <summary>
/// 执行一条返回第一条记录第一列的SqlCommand命令,通过专用的连接字符串。
/// 使用参数数组提供参数
/// </summary>
/// <param name="conn"></param>
/// <param name="sql"></param>
/// <param name="ps"></param>
/// <returns>返回一个object数据</returns>
public
static
object
ExecuteScale(SqlConnection conn,
string
sql,
params
SqlParameter[] ps)
{
using
(SqlCommand cmd =
new
SqlCommand(sql, conn))
{
conn.Open();
cmd.Parameters.AddRange(ps);
return
cmd.ExecuteScalar();
}
}
/// <summary>
/// 执行一条返回第一条记录第一列的SqlCommand命令,通过专用的连接字符串。
/// 使用参数数组提供参数
/// </summary>
/// <param name="sql">sql语句</param>
/// <param name="ps">参数</param>
/// <returns>返回一个object数据</returns>
public
static
object
ExecuteScale(
string
sql,
params
SqlParameter[] ps)
{
using
(SqlConnection conn =
new
SqlConnection(SqlHelper.constr))
{
return
SqlHelper.ExecuteScale(conn, sql, ps);
}
}
/// <summary>
/// 该方法用于读取数据
/// </summary>
/// <param name="sql">sql语句</param>
/// <param name="sp">sql参数</param>
/// <returns>SqlDataReader类型</returns>
public
static
SqlDataReader ExecuteReader(
string
sql,
params
SqlParameter[] sp)
{
SqlConnection conn =
new
SqlConnection(constr);
using
(SqlCommand cmd=
new
SqlCommand(sql,conn))
{
cmd.Parameters.AddRange(sp);
try
{
conn.Open();
return
cmd.ExecuteReader(CommandBehavior.CloseConnection);
}
catch
(Exception ex){
conn.Close();
conn.Dispose();
throw
ex;
}
}
}
/// <summary>
/// 读取数据返回的是datatable
/// </summary>
/// <param name="sql"></param>
/// <param name="ps"></param>
/// <returns>DataTable</returns>
public
static
DataTable ExecuteTable(
string
sql,
params
SqlParameter[] ps)
{
DataTable dt=
new
DataTable();
using
(SqlDataAdapter da =
new
SqlDataAdapter(sql, constr))
{
if
(ps !=
null
)
{
da.SelectCommand.Parameters.AddRange(ps);
}
da.Fill(dt);
}
return
dt;
}
}
}