码迷,mamicode.com
首页 > 数据库 > 详细

SqlHelper封装类测试

时间:2019-04-13 10:56:14      阅读:200      评论:0      收藏:0      [点我收藏+]

标签:values   view   using   更新   scalar   ati   获取   cmd   logs   

SqlHelper封装类连接:https://www.cnblogs.com/Gzu_zb/p/10694207.html

1.执行增、删、改的方法:ExecuteNonQuery

技术图片
public static int ExecuteNonQuery(string sql, params SqlParameter[] pms)
{
    using (SqlConnection con = new SqlConnection(connStr))
    {
        using (SqlCommand cmd = new SqlCommand(sql, con))
        {
            if (pms != null)
            {
                cmd.Parameters.AddRange(pms);
            }
            con.Open();
            try
            {
                return cmd.ExecuteNonQuery();
            }
            catch (Exception)
            {
                return 0;//返回0表示操作失败
                         //throw;
            }
        }
    }
}
View Code

更新:

技术图片
//更新
        int flag = SqlHelper.ExecuteNonQuery("UPDATE [dbo].[user] SET [password] = @password WHERE username=@username", new SqlParameter("@username", TextBox1.Text), new SqlParameter("@password", TextBox2.Text));
        if (flag != 0)
        {
            Response.Write("更新成功!");
        }
        else
        {
            Response.Write("更新失败!");
        }
View Code

插入:

技术图片
//插入
        int flag = SqlHelper.ExecuteNonQuery("Insert into [dbo].[user] values (@username,@password)", new SqlParameter("@username", TextBox1.Text), new SqlParameter("@password", TextBox2.Text));
        if (flag != 0)
        {
            Response.Write("插入成功!");
        }
        else
        {
            Response.Write("插入失败!");
        }
View Code

删除:

技术图片
//删除
        string sqlStrDel = "Delete from [dbo].[user] Where username=@username";
        int flag = SqlHelper.ExecuteNonQuery(sqlStrDel, new SqlParameter("@username", TextBox1.Text));
        if (flag != 0)
        {
            Response.Write("删除成功!");
        }
        else
        {
            Response.Write("删除失败!");
        }
View Code

 

2.执行查询多行多列的数据的方法:ExecuteReader

技术图片
public static SqlDataReader ExecuteReader(string sql, params SqlParameter[] pms)
{
    SqlConnection con = new SqlConnection(connStr);
    using (SqlCommand cmd = new SqlCommand(sql, con))
    {
        if (pms != null)
        {
            cmd.Parameters.AddRange(pms);
        }
        try
        {
            con.Open();
            return cmd.ExecuteReader(CommandBehavior.CloseConnection);
        }
        catch (Exception)
        {
            con.Close();
            con.Dispose();
            throw;
        }
    }
}
View Code

查询:

技术图片
string sqlStr = "select * from [dbo].[user]";
        SqlDataReader reader = SqlHelper.ExecuteReader(sqlStr);
        while (reader.Read())
        {
            Response.Write(reader[0] + "\t\t\t" + reader[1] + "<br />");
        }
View Code
技术图片
string sqlStr = "select password from [user] where username=@username";
        SqlDataReader reader = SqlHelper.ExecuteReader(sqlStr, new SqlParameter("@username", TextBox1.Text));
        while (reader.Read())
        {
            Response.Write(reader[0]);
        }
View Code

 

3.封装一个执行返回单个对象的方法:ExecuteScalar()

技术图片
public static object ExecuteScalar(string sql, params SqlParameter[] pms)
{
    using (SqlConnection con = new SqlConnection(connStr))
    {
        using (SqlCommand cmd = new SqlCommand(sql, con))
        {
            if (pms != null)
            {
                cmd.Parameters.AddRange(pms);
            }
            con.Open();
            return cmd.ExecuteScalar();
        }
    }
}
View Code

查询:

技术图片
//查找
        string sqlStrSel = "Select password From [dbo].[user] Where username=@username";
        try
        {
            pwd = SqlHelper.ExecuteScalar(sqlStrSel, new SqlParameter("@username", TextBox1.Text)).ToString();
            Label1.Text = pwd;
        }
        catch (Exception)
        {
            Label1.Text = "您查询的用户不存在!";
            //throw;
        }
View Code

 

4.执行返回DataTable的方法

技术图片
public static DataTable ExecuteDataTable(string sql, params SqlParameter[] pms)
{
    DataTable dt = new DataTable();
    using (SqlDataAdapter adapter = new SqlDataAdapter(sql, connStr))
    {
        if (pms != null)
        {
            adapter.SelectCommand.Parameters.AddRange(pms);
        }
        adapter.Fill(dt);
    }
    return dt;
}
View Code

查询:

技术图片
        string sqlStr = "select * from [user]";
        DataTable dt = SqlHelper.ExecuteDataTable(sqlStr);

        Label1.Text += dt.Rows.Count.ToString() + "<br/>";//获取从数据库得到数据的行数

        //遍历输出内存表中的所有数据
        //方式一
        foreach (DataRow s in dt.Rows)
        {
            //Label1.Text += s[0].ToString() + " " + s[1].ToString() + "<br/>";
            Label1.Text += s["username"].ToString() + " " + s["password"].ToString() + "<br/>";//这种写法与上一行的写法效果一样
        }
        //方式二
        for (int i = 0; i < dt.Rows.Count; i++)
        {
            //Label1.Text += dt.Rows[i][0] + " " + dt.Rows[i][1] + "<br/>";
            Label1.Text += dt.Rows[i]["username"] + " " + dt.Rows[i]["password"] + "<br/>";//这种写法与上一行的写法效果一样
        }
View Code

 

SqlHelper封装类测试

标签:values   view   using   更新   scalar   ati   获取   cmd   logs   

原文地址:https://www.cnblogs.com/Gzu_zb/p/10699924.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!