using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.Common;
using System.Configuration;
namespace TSMS.Common
{ //定義一個抽象類
public abstract class AbstractSqlHelper
{
private SqlConnection conn = null;//初始化一個sql連接
/// <summary>
/// 獲取連接字符串並打開
/// </summary>
public void GetConnection()
{ //private static string conStr = ConfigurationManager.ConnectionStrings["sqlstr"].ConnectionString;
string strCon = ConfigurationManager.ConnectionStrings["sqlstr"].ConnectionString;
conn = new SqlConnection(strCon);
conn.Open();
if (conn.State!=ConnectionState.Open)
{
conn.Close();
conn.Dispose();
}
}
/// <summary>
/// 關閉連接
/// </summary>
public void CloseConnection()
{
if (conn!=null)
{
conn.Close();
conn.Dispose();
}
}
/// <summary>
/// 設置需要執行的存儲過程或語句
/// </summary>
/// <param name="sql"></param>
/// <param name="cmdtype"></param>
/// <param name="pars"></param>
/// <returns></returns>
#region 設置需要執行的存儲過程或語句
public SqlCommand GetCommand(string sql, CommandType cmdtype, params SqlParameter[] pars)
{
GetConnection();
SqlCommand cmd = conn.CreateCommand();
cmd.CommandType = cmdtype;
cmd.CommandText = sql;
if (pars != null)
{
cmd.Parameters.AddRange(pars);
}
return cmd;
}
public SqlCommand GetCommand(string sql, CommandType cmdtype, List<SqlParameter> pars)
{
GetConnection();
SqlCommand cmd = conn.CreateCommand();
cmd.CommandType = cmdtype;
cmd.CommandText = sql;
foreach (SqlParameter s in pars)
{
cmd.Parameters.Add(s);
}
return cmd;
}
#endregion
/// <summary>
/// 執行非查詢
/// </summary>
/// <param name="sql"></param>
/// <param name="cmdtype"></param>
/// <param name="parameters"></param>
/// <returns></returns>
public abstract bool ExecuteNonQurey(string sql, CommandType cmdtype, params SqlParameter[] parameters);
/// <summary>
/// 查詢表通過參數
/// </summary>
/// <param name="sql"></param>
/// <param name="cmdtype"></param>
/// <param name="parameters"></param>
/// <returns>DataSet</returns>
public abstract DataSet GetDataSet(string sql, CommandType cmdtype, params SqlParameter[] parameters);
/// <summary>
/// 查詢表通過list泛型集合
/// </summary>
/// <param name="sql"></param>
/// <param name="cmdtype"></param>
/// <param name="list"></param>
/// <returns></returns>
public abstract DataSet GetDataSet(string sql, CommandType cmdtype, List<SqlParameter> list);
/// <summary>
/// 查詢表通過參數
/// </summary>
/// <param name="sql"></param>
/// <param name="cmdtype"></param>
/// <param name="parameters"></param>
/// <returns>DataTable</returns>
public abstract DataTable GetDataTable(string sql, CommandType cmdtype, params SqlParameter[] parameters);
public abstract object GetSingleData(string sql, CommandType cmdtype, params SqlParameter[] parameters);
public abstract SqlDataReader GetDataReader(string sql,CommandType cmdtype,params SqlParameter[] parameters);
}
}
AbstractSqlHelper
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.