数据库学习笔记第十一周tree

一、知识归纳:
tree树涉及多张表格,所以本次案列设计用到了Medicine,typemedicine,tb_medicineName等三张数据表。因此要用到DateSet来存放这三张表格。
具体实现:DataTable chinesemedicineTable = dataSet.Tables[0]; //声明院系数据表,对应数据集的表集合中的第1张数据表;
二、关键代码的实现
foreach (DataRow departmentRow in chinesemedicineTable.Rows) //遍历院系数据表中的每一数据行;
{
TreeNode departmentNode = new TreeNode(); //声明并实例化院系节点,该节点对应当前某个院系;
departmentNode.Text = departmentRow[“Name”].ToString(); //院系节点的文本设为当前院系的名称;
this.trv_addquick.Nodes.Add(departmentNode); //将院系节点加入树形视图的(根)节点集合;
foreach (DataRow majorRow in departmentRow.GetChildRows(“Medicine_typemedicine”)) //借助先前定义的数据关系,遍历当前院系所在数据行的子行,即下属所有专业;
{
TreeNode majorNode = new TreeNode(); //声明并实例化专业节点,该节点对应当前某个专业;
majorNode.Text = majorRow[“Name”].ToString(); //专业节点的文本设为当前专业的名称;

                majorNode.Tag= majorRow["No"];
                 departmentNode.Nodes.Add(majorNode); 
                 }
        }
    }

三、关键词的作用
建表的关键:要通过外键来将各个表格联系起来。
treenode:根节点的使用一定要和for语句循环结合起来,这样就可以将将根节点下的各个数据与根节点结合起来,形成树结构。
tag:通过tag标签将根节点的外键的内容保存下来,查询子节点的主键,从而子节点的查询。

数据库学习笔记第十一周tree