在C#中使用ADO.NET连接数据库的时候,每次连接都要编写连接,打开,执行SQL语句的代码,很麻烦,编写一个SqlHelper类,把每次连接都要写的代码封装成方法,把要执行的SQL语句通过参数传进去,可以大大简化编码,下面就一步步的编写一个SqlHelper类。
每次连接都要写的代码
using (SqlConnection conn = new SqlConnection(
"Data Source = .;Initial Catalog = DB1;User ID = sa;Password = zxcasd"))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "select * from T_student";
using (SqlDataReader reader = cmd.ExecuteReader())
{
List<string> lName = new List<string>();
while (reader.Read())
{
string name = reader.GetString(1);
lName.Add(name);
}
listName.ItemsSource = lName;
}
}
}
下面是封装在SqlHelper类中ExecuteNonQuery方法:
//把连接字符串写在App.config文件中
private static string connStr = ConfigurationManager.ConnectionStrings["dbConn"].ConnectionString;
//参数使用可变参数,params,在需要传递参数的时候传递,不需要的时候可以不写
public static int ExecuteNonQuery(string sql,params SqlParameter[] parameters)
{
using (SqlConnection conn = new SqlConnection(connStr))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = sql;