using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data.SqlClient; using System.Data; using System.Configuration; namespace DAL { public class SqlHelperOA2023 { //获得数据库连接字符串 public static readonly string conString = ConfigurationManager.ConnectionStrings["sqlConNew"].ConnectionString; /// /// 创建数据库连接对象 /// /// 返回数据库连接对象 public static SqlConnection createCon() { return new SqlConnection(conString); } public static DataTable QueryAll(string sql) { SqlConnection conn = new SqlConnection(conString); try { conn.Open(); SqlCommand com = new SqlCommand(sql, conn); SqlDataAdapter da = new SqlDataAdapter(com); DataSet ds = new DataSet(); da.Fill(ds); return ds.Tables[0]; } catch (Exception) { return null; } finally { conn.Close(); } } /// /// 创建执行对象 /// /// 文本内容 /// 文本类型 /// 可变参数数组 /// 返回执行对象 public static SqlCommand createCmd(string cmdText, CommandType cmdType, params SqlParameter[] param) { //实例化执行对象 SqlCommand cmd = new SqlCommand(); //执行连接对象 cmd.Connection = createCon(); //执行文本内容 cmd.CommandText = cmdText; //选择文本类型 cmd.CommandType = cmdType; //判断可变参数数组里是否为null 如果不为null 则添加进可变参数数组中 if (param != null) foreach (SqlParameter p in param) cmd.Parameters.Add(p); //cmd.Parameters.Clear();//执行完后清理SqlParameter中的值 //返回执行对象 return cmd; } /// /// 创建ExecuteNonQuery()方法Edit /// /// 文本内容 /// 文本类型 /// 可变参数数组 /// 返回受影响行数 public static int ExecuteNonQuery(string cmdText, CommandType cmdType, params SqlParameter[] param) { //创建执行对象 SqlCommand cmd = createCmd(cmdText, cmdType, param); try { //打开连接 cmd.Connection.Open(); //执行ExecuteNonQuery()方法 int count = cmd.ExecuteNonQuery(); //关闭连接 cmd.Connection.Close(); //返回受影响行数 return count; } catch (Exception e) { string error = e.Message.ToString(); //关闭连接 cmd.Connection.Close(); //返回 0 return 0; } } /// /// 创建ExecuteScalar()方法Add /// /// 文本内容 /// 文本类型 /// 可变参数数组 /// 返回第1行第1列的值 public static Object ExecuteScalar(string cmdText, CommandType cmdType, params SqlParameter[] param) { //创建执行对象 SqlCommand cmd = createCmd(cmdText, cmdType, param); try { //打开连接 cmd.Connection.Open(); //执行查询方法 Object obj = cmd.ExecuteScalar(); //返回第1行第1列的值 return obj; } catch (Exception EX) { //关闭连接 cmd.Connection.Close(); //返回空 return null; } } } }