DataSet和DataTable的区别

ASP.NET 同时被 3 个专栏收录
11 篇文章 0 订阅
17 篇文章 1 订阅
6 篇文章 0 订阅

DataTable和DataSet都可以看做是数据容器,比如你查询数据库后得到一些结果,可以放到这种容器里,用这两个容器有什么好处呢?


这种容器的功能很强大,除了可以存数据,还可以有更大用途。例如:在一个c/s结构的桌面数据库系统里,你可以把前面存放查询结果的容器里的数据显示到你客户端界面上,用户在界面上对数据进行添加、删除、修改,你可以把用户的操作更新到容器,等用户操作完毕了,要求更新,然后你才把容器整个的数据变化更新到中心数据库,这样做的好处是什么?就是减少了数据库操作,客户端速度提高了,数据库压力减小了。


DataSet可以比作一个内存中的数据库,可以包括表,视图等。DataTable是一个内存中的数据表,DataSet里可以存储多个DataTable。


例如;以下代码,就是将数据结果放到了DataSet中,这个也是比较常见的写法,最后返回查询到的结果集。

  public static DataSet Query(string SQLString)
        {
            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                DataSet ds = new DataSet();
                try
                {
                    connection.Open();
                    SqlDataAdapter command = new SqlDataAdapter(SQLString, connection);
                    command.Fill(ds, "ds");
                }
                catch (System.Data.SqlClient.SqlException ex)
                {
                    throw new Exception(ex.Message);
                }
                return ds;
            }
        }

 下面的代码将查询到的数据结果放到DataTable中,DataTable就相当于一张数据表,最后将数据结果绑定到DropDownList控件中。

        protected void BindDropDownList_Frame1()
        {
            DropDownList_Frame2.Items.Clear();
            ListItem item = new ListItem("请选择...", "-1");
            DropDownList_Frame2.Items.Add(item);
            sqlDataEmployee sde = new sqlDataEmployee();
            DataTable dt = sde.GetFrame1();
            DropDownList_Frame2.DataSource = dt;
            DropDownList_Frame2.DataTextField = "Frame2";
            DropDownList_Frame2.DataValueField = "Frame2";
            DropDownList_Frame2.DataBind();
        }



  • 2
    点赞
  • 0
    评论
  • 7
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

参与评论 您还未登录,请先 登录 后发表或查看评论
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页

打赏作者

独家记忆0408

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值