ASP.NET动态网站开发培训-32.ADO.NET技术(四、SqlDataAdapter类与DataSet类)

本文详细介绍了ADO.NET技术中的SqlDataAdapter类与DataSet类的应用。包括如何创建SqlDataAdapter对象,使用Fill方法填充DataSet,以及如何将DataSet绑定到GridView进行数据展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第三十二讲:ADO.NET技术(四、SqlDataAdapter类与DataSet类)

课程安排:

SqlDataAdapter类

DataSet类

通过Fill方法,填充DataSet

将DataSet与GridView绑定


SqlDataAdapter类

SqlDataAdapter类是内存与数据库之间的桥梁。


创建SqlDataAdapter类的对象

SqlDataAdapter sda = new SqlDataAdapter(cmd);  //构造函数有一个参数,是SqlCommand对象。

SqlDataAdapter sda = new SqlDataAdapter(sql,cn); //sql是一条select语句。cn是连接对象。


DataSet类

DataSet是ADO.NET中的核心对象。所有复杂级别的操作都使用它。 

DataSet包含一组DataTable对象,它们表示被操作的数据库表。

DataTable由DataRow组成。


创建一个DataSet类的对象

DataSet ds = new DataSet();


//获取第一个表中,第2行,第2列的数据。

Response.Write(ds.Tables[0].Rows[1][1]);


通过Fill方法,填充DataSet

//使用SqlDataAdapter类的Fill方法,填充到DataSet对象实例中。

sda.Fill(ds,"aaa");


打印aaa表中的所有人名。

foreach(Datarow theRow in ds.Tables["aaa".Rows]
{
    Response.Write(theRow["Name"] + "<br/>");
}

完整代码:

        using (SqlConnection cn = new SqlConnection())
        {
            cn.ConnectionString = ConfigurationManager.ConnectionStrings["TestCN"].ConnectionString;
            cn.Open();

            using (SqlCommand cmd = cn.CreateCommand())
            {
                cmd.CommandText = "SELECT * FROM Taa";
                cmd.CommandType = System.Data.CommandType.Text;

                using (SqlDataAdapter sda = new SqlDataAdapter(cmd))
                {
                    using (DataSet ds = new DataSet())
                    {
                        sda.Fill(ds, "abc");
                        foreach (DataRow dr in ds.Tables["abc"].Rows)  //ds.Tables[0].Rows也可以
                        {
                            Response.Write(dr["name"] + "<br/>");
                        }
                    }
                }
            }
        }


将DataSet与GridView绑定

 GridView1.DataSource = ds.Tables[0];
 GridView1.DataBind();


考虑到代码重用性,可手动编写SqlHelper类,实现代码重用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值