简单的SqlHelper

 1 namespace Login
 2 {
 3     class SqlHelper
 4     {  //连接数据库的字符串
 5         //static string dataConnection = "server=***-PC;database=HeiMa;uid=sa;pwd=********";
 6         //使用配置文件连接数据库的方法
 7         //1.WinForm项目,请添加对“System.Configuration”的引用
 8         //2.对配置文件connectionStrings节进行读取
 9         static string dataConnection = System.Configuration.ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;
10 
11         #region 返回一张执行查询的表+static DataTable ExecuteDataTable(string sql, params SqlParameter[] param)
12         /// <summary>
13         /// 返回一张执行查询的表
14         /// </summary>
15         /// <param name="sql">执行的数据库查询语句</param>
16         /// <param name="param">添加入查询语句的参数(参数化查询)</param>
17         /// <returns>返回执行的一张结果集的表</returns>
18         public static DataTable ExecuteDataTable(string sql, params SqlParameter[] param)
19         {  //创建一个临时数据集,存在内存中
20             DataSet ds = new DataSet();
21 
22             //创建一个适配器并连接数据库通道
23             SqlDataAdapter sda = new SqlDataAdapter(sql, dataConnection);
24 
25             //给适配器对象的查询命令添加参数
26             sda.SelectCommand.Parameters.AddRange(param);
27 
28             //捕获异常,为的是不知道返回是否有数值
29             try
30             {
31                 sda.Fill(ds); //如果有返回数值,则填充
32                 DataTable dt = ds.Tables[0];//获得第一张表
33                 return dt;
34             }
35             catch
36             {
37                 return null;//没有表时,返回空
38             }
39 
40         }
41         #endregion
42         #region 返回受影响的行数+static int ExecuteNonQuery(string sql, params SqlParameter[] param)
43         /// <summary>
44         /// 返回受影响的行数
45         /// </summary>
46         /// <param name="sql">执行数据库的查询语句</param>
47         /// <param name="param">传递参数(参数化查询)</param>
48         /// <returns>返回受影响的行数</returns>
49         public static int ExecuteNonQuery(string sql, params SqlParameter[] param)
50         {
51             //创建连接数据库的通道
52             using (SqlConnection conns = new SqlConnection(dataConnection))
53             {  //创建执行命令对象,并连接数据库通道
54                 using (SqlCommand cmd = new SqlCommand(sql, conns))
55                 {  //将参数添加到命令对象中
56                     cmd.Parameters.AddRange(param);
57                     //打开数据库
58                     conns.Open();
59                     //返回受影响的行数
60                     return cmd.ExecuteNonQuery();
61 
62                 }
63             }
64 
65         }
66 
67         #endregion
68 
69         #region 返回查询结果的第一行第一列的值+static object ExecuteScalar(string sql, params SqlParameter[] param)
70         /// <summary>
71         /// 返回查询结果的第一行第一列的值
72         /// </summary>
73         /// <param name="sql">传入数据库查询语句</param>
74         /// <param name="param">传入数据库查询需要的查询参数</param>
75         /// <returns>返回查询结果的第一行第一列的</returns>
76         public static object ExecuteScalar(string sql, params SqlParameter[] param)
77         {
78             using (SqlConnection conn = new SqlConnection(dataConnection))
79             {
80                 using (SqlCommand cmd = new SqlCommand(sql, conn))
81                 {  //传入参数
82                     cmd.Parameters.AddRange(param);
83                     conn.Open();
84                     return cmd.ExecuteScalar();
85                 }
86             }
87 
88         } 
89         #endregion
90 
91     }
92 }
原文地址:https://www.cnblogs.com/ljs05/p/3432092.html