新建DataSet

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

 

namespace _7CreateDataSet

{

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

        }

 

 

 

        void BindDataSocurce()

        {

            dataGridView1.DataSource = myDataSet.Tables["tbl_Parent"].DefaultView;

            dataGridView2.DataSource = myDataSet.Tables["tbl_Child"].DefaultView;

        }

 

        DataSet myDataSet;//定义一个数据集

 

        private void button1_Click(object sender, EventArgs e)

        {

            myDataSet = new DataSet("myDataSet");//实例化一个数据集

 

            DataTable dtParent = new DataTable("tbl_Parent");

            DataTable dtChild = new DataTable("tbl_Child");

           

            //添加两张表

            myDataSet.Tables.Add(dtParent);

            myDataSet.Tables.Add(dtChild);

           

        }

 

        private void button2_Click(object sender, EventArgs e)

        {

            try

            {

                //添加列

                myDataSet.Tables["tbl_Parent"].Columns.Add("id", typeof(Int32));

                myDataSet.Tables["tbl_Parent"].Columns.Add("name", typeof(String));

 

                myDataSet.Tables["tbl_Child"].Columns.Add("id", typeof(Int32));

                myDataSet.Tables["tbl_Child"].Columns.Add("add", typeof(String));

                myDataSet.Tables["tbl_Child"].Columns.Add("sex", typeof(String));

                myDataSet.Tables["tbl_Child"].Columns.Add("RelactionID", typeof(Int32));

            }

            catch (Exception ee)

            {

                MessageBox.Show(ee.Message);

 

            }

        }

 

        private void button3_Click(object sender, EventArgs e)

        {

            try

            {

                //添加行

                DataRow drP = myDataSet.Tables["tbl_Parent"].NewRow();

 

                drP["id"] = 1;

                drP["name"] = "xiage";

                myDataSet.Tables["tbl_Parent"].Rows.Add(drP);

 

                drP = myDataSet.Tables["tbl_Parent"].NewRow();

                drP["id"] = 2;

                drP["name"] = "xiagezhao";

                myDataSet.Tables["tbl_Parent"].Rows.Add(drP);

 

                DataRow drC = myDataSet.Tables["tbl_Child"].NewRow();

 

                drC["id"] = 1;

                drC["add"] = "江苏邳州";

                drC["sex"] = "Man";

                drC["RelactionID"]=1;

                myDataSet.Tables["tbl_Child"].Rows.Add(drC);

 

            }

            catch (Exception ee)

            {

                MessageBox.Show(ee.Message);

            }

            BindDataSocurce();

        }

 

        private void button4_Click(object sender, EventArgs e)

        {

            //添加唯一性

            System.Data.UniqueConstraint uc = new UniqueConstraint("唯一性", myDataSet.Tables["tbl_Parent"].Columns["id"]);

            myDataSet.Tables["tbl_Parent"].Constraints.Add(uc);

 

        }

 

        private void button5_Click(object sender, EventArgs e)

        {

            //添加外键

            ForeignKeyConstraint fkc = new ForeignKeyConstraint("新建外键", myDataSet.Tables["tbl_Parent"].Columns["id"], myDataSet.Tables["tbl_Child"].Columns["id"]);

            myDataSet.Tables["tbl_Child"].Constraints.Add(fkc);

 

        }

 

        private void button6_Click(object sender, EventArgs e)

        {

            myDataSet.Tables["tbl_Parent"].Rows[0][0] = "3";

            BindDataSocurce();

 

        }

 

        private void button7_Click(object sender, EventArgs e)

        {

            //DataRow dr = myDataSet.Tables["tbl_Parent"].Rows[0];

                    

            //dr["name"] = "Alice";

 

            //listBox1.Items.Add("行状态:"+dr.RowState.ToString());

 

            //dr.AcceptChanges();        

 

            //listBox1.Items.Add("行状态:"+myDataSet.Tables["tbl_Parent"].Rows[0].RowState.ToString());

 

            listBox1.Items.Add("行状态:" + myDataSet.Tables["tbl_Parent"].Rows[0].RowState.ToString());

 

            myDataSet.Tables["tbl_Parent"].Rows[0][1] = "Alice";

 

            listBox1.Items.Add("行状态:" + myDataSet.Tables["tbl_Parent"].Rows[0].RowState.ToString());

 

            myDataSet.Tables["tbl_Parent"].AcceptChanges();

 

            listBox1.Items.Add("行状态:" + myDataSet.Tables["tbl_Parent"].Rows[0].RowState.ToString());

            BindDataSocurce();

 

 

            //System.Data.DataRowState.

         

       

        }

 

        private void button8_Click(object sender, EventArgs e)

        {          

 

            //                                       添加表关系

            //

            //

            // 摘要:

            //     获取用于将表链接起来并允许从父表浏览到子表的关系的集合。

            //

            // 返回结果:

            //     包含一个 System.Data.DataRelation 对象集合的 System.Data.DataRelationCollection。如果

            //     System.Data.DataRelation 对象不存在,将返回空集合。

 

            myDataSet.Relations.Add("relation", myDataSet.Tables["tbl_Parent"].Columns["id"], myDataSet.Tables["tbl_Child"].Columns["RelactionID"]);

 

            DataRow dr = myDataSet.Tables["tbl_Parent"].Rows[0];

            DataRow[] ArrayDr = dr.GetChildRows("relation");

 

            foreach(DataRow r in ArrayDr)

            {

                listBox1.Items.Clear();

                listBox1.Items.Add(r[1]);

            }

          

            DataRow dr2 = myDataSet.Tables["tbl_Child"].Rows[0];

            DataRow[] ArrayDr2 = dr2.GetParentRows("relation");

 

            foreach (DataRow r in ArrayDr2)

            {

                listBox1.Items.Add(r[1]);

            }

        }

 

 

 

    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值