第七周 学习笔记--ADO.Net中DataTable的应用

一.知识点
1、概述:DataTable是一个临时保存数据的网格虚拟表(表示内存中数据的一个表),是ADO.Net库中的核心对象。
2、DataTable类将关系数据表示为表格形式,ADO.Net提供了一个DataTable类来独立创建和使用数据表。
3、在创建DataTable之前,必须包含using System.Data名称空间。
4、DataTable的常用属性
①Columns:它用于获取属于此表的列的集合。
②DataSet:它用于获取此表所属的DataSet。
③Rows:它用于获取属于此表的行的集合。
④PrimaryKey:它用于获取或设置一个用作数据表主键的列数组。
⑤TableName:它用于获取或设置DataTable的名称。
5、主要用法:
①创建和使用DataTable
(1)DataTable Table = new DataTable(); (声明实例化数据表)
(2)sqlDataAdapter.Fill(bedTable); (sql数据适配器读取数据,并填充数据表)
(3)this.DataGridView.DataSource =Table; (将数据网格视图的数据源设为数据表)
(4)应用数据表里的各个属性用于绑定数据网格视图的列。
②DataTable中的数据处理
(1)向数据表中插入数据,创建新行并将它们添加到表中。
(2)查看数据表中的数据。
(3)更新或修改数据表中的数据。
(4)删除DataGridView中相关行的数据并同时删除与之绑定的数据表中的数据。
(5)数据表的复制。

二.思维导图
在这里插入图片描述

三.代码

namespace ProjectWeb
{
public partial class DataSetTable : System.Web.UI.Page
{
private Dictionary<string, string> dicObject = new Dictionary<string, string>();

    protected void Page_Load(object sender, EventArgs e)
    {
        DataTable dt_sn = GetData().Tables[0];
        this.dicObject.Clear();
        foreach (DataRow dr in dt_sn.Rows)
            this.dicObject.Add(dr["id"].ToString(), dr["name"].ToString());
        this.DropDownList1.Items.Clear();
        this.DropDownList1.Items.Add(new ListItem("第一张表"," "));
        foreach (KeyValuePair<string, string> kv in dicObject)
            this.DropDownList1.Items.Add(new ListItem(kv.Value, kv.Key));
        DataTable dt_te = GetData().Tables[1];
        this.DropDownList2.Items.Clear();
        this.DropDownList2.Items.Add(new ListItem("第二张表", " "));
        foreach (DataRow dr in dt_te.Rows)
            this.DropDownList2.Items.Add(new ListItem(dr["name"].ToString(), dr["id"].ToString()));
    }

    private DataSet GetData()
    {
        DataTable dt_sn = new DataTable();
       
        dt_sn.Columns.Add("id");
        dt_sn.Columns.Add("name");
        DataRow dr_sn = dt_sn.NewRow();
        dr_sn["id"] = "1";
        dr_sn["name"] = "李三";
        dt_sn.Rows.Add(dr_sn);
        dt_sn.TableName = "SN";
        DataTable dt_te = new DataTable();
        dt_te.Columns.Add("id");
        dt_te.Columns.Add("name");
        DataRow dr_te = dt_te.NewRow();
        dr_te["id"] = "2";
        dr_te["name"] = "王二";
        dt_te.Rows.Add(dr_te;
        dt_te.TableName = "Te";

        DataSet ds = new DataSet();
        
        ds.Tables.Add(dt_sn);
        ds.Tables.Add(dt_te);

        return ds;
    }
  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值