这里是现在我的理解范围内,跟着老师学习,然后自己能够理解的先对较好的一个SQLHelper.
using System; using System.Data; using System.Data.SqlClient; using System.Text; using System.Configuration; namespace _04SQLHelper { static class SQLHelper {
//读取配置文件,获取连接字符串 static string strConn =ConfigurationManager.ConnectionStrings["Sql"].ConnectionString;
public static int ExecuteNoneQuery(string commandText, params SqlParameter[] paras) { using (SqlConnection conn = new SqlConnection(strConn)) { using (SqlCommand cmd = new SqlCommand(commandText, conn)) { //添加参数 if (paras != null) { cmd.Parameters.AddRange(paras);
} //打开连接 if (conn.State == ConnectionState.Closed) { conn.Open(); } //执行非查询,操作 return cmd.ExecuteNonQuery(); } } } //返回第一行第一列结果 public static object ExecuteScalar(string commandText, params SqlParameter[] paras) { using (SqlConnection conn = new SqlConnection(strConn)) { using (SqlCommand cmd = new SqlCommand(commandText, conn)) { //添加参数 if (paras != null && paras.Length!=0) { cmd.Parameters.AddRange(paras); } //打开连接 if (conn.State == ConnectionState.Closed) { conn.Open(); } //执行操作返回结果 return cmd.ExecuteScalar(); } } } //返回SqlDataReader数据集 public static SqlDataReader ExecuteReader(string commandText, params SqlParameter[] paras) { SqlConnection conn = new SqlConnection(strConn); using (SqlCommand cmd = new SqlCommand(commandText, conn)) { //传入参数 if (paras != null && paras.Length != 0) { cmd.Parameters.AddRange(paras); } //打开连接 if (conn.State == ConnectionState.Closed) { conn.Open(); } //自动实现连接的关闭 return cmd.ExecuteReader(CommandBehavior.CloseConnection); } } //执行SqlDataAdapter,返回DataSet public static DataSet DataAdapter(string commandText, params SqlParameter[] paras) { DataSet ds = new DataSet(); using (SqlDataAdapter sda = new SqlDataAdapter(commandText, strConn)) { //添加参数 if (paras != null && paras.Length != 0) { sda.SelectCommand.Parameters.AddRange(paras); } //填充数据集 sda.Fill(ds); //返回数据集 return ds; } } } }