using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
/// <summary>
/// SqlHelper 的摘要说明
/// </summary>
public class SqlHelper
{
public static readonly string ConnectionString = ConfigurationManager.ConnectionStrings["pubsConnectionString"].ConnectionString;
public static SqlDataReader ExecuteReader(string ConnectionString, CommandType cmdType, string cmdText, params SqlParameter[] commandParameters)
{
SqlCommand cmd = new SqlCommand(); //命令对象实例化
SqlConnection conn = new SqlConnection(ConnectionString); //链接数据实例化 真正链接数据库
try
{
PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
SqlDataReader sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection); //以数据流的型式输出数据给 sdr
cmd.Parameters.Clear();
return sdr;
}
catch
{
conn.Close();
throw;
}
}
//返回数据流类型的值 查询
public static DataSet ExecuteDataSet(string Mycn, CommandType cmdType, string cmdText)
{
DataSet ds = new DataSet();
using (SqlConnection conn = new SqlConnection(Mycn))
{
SqlDataAdapter sda = new SqlDataAdapter(cmdText, conn);
sda.SelectCommand.CommandType = cmdType;
sda.Fill(ds);
return ds;
}
}
private static void PrepareCommand(SqlCommand cmd, SqlConnection conn, SqlTransaction trams, CommandType cmdType, string cmdText, SqlParameter[] cmdParms)
{
if (conn.State == ConnectionState.Open)
{
conn.Open(); //打开数据库
cmd.Connection = conn; //
cmd.CommandText = cmdText; //指定操作语句
//if(trams!=null)
//{
//cmd.Transaction = trams;
//}
//cmd.CommandType = cmdType;
//if (cmdParms != null)
//{
// foreach (Sqlparameter parm in cmdParms)
// {
// cmd.Parameters.Add(parm);
// }
//}
}
}
//操作类
public static int ExecuteNoQuery(SqlConnection connection, CommandType cmdType, string cmdText, params SqlParameter[] commandParameters)
{
SqlCommand cmd = new SqlCommand();
PrepareCommand(cmd, connection, null, cmdType, cmdText, commandParameters);
int val = cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
return val;
}
//执行类 删除、修改、插入
public static object ExecuteScalar(SqlConnection connection, CommandType cmdType, string cmdText, params SqlParameter[] commandParameters)
{
SqlCommand cmd = new SqlCommand();
PrepareCommand(cmd, connection, null, cmdType, cmdText, commandParameters);
object val = cmd.ExecuteScalar();
cmd.Parameters.Clear();
return val;
}
//返回首行首列
}