티스토리 뷰





using System;
using System.Data;
using System.Windows.Forms;

namespace ConstraintSample
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            InitializeMyComponent();
        }

        private void InitializeMyComponent()
        {
            // Shop DataSet
            DataSet shopDataSet = new DataSet("Shop");

            // Person DataTable
            DataTable personDataTable = new DataTable("Person");
            shopDataSet.Tables.Add(personDataTable);

            DataColumn nameDataColumn = new DataColumn("Name", typeof(string));
            personDataTable.Columns.Add(nameDataColumn);

            // Primary Key
            DataColumn[] personPrimaryKey = { nameDataColumn };
            personDataTable.PrimaryKey = personPrimaryKey;

            personDataTable.Columns.Add("Age", typeof(int));
            personDataTable.Columns.Add("Address", typeof(string));

            personDataTable.Rows.Add("Paul", 21, "Seoul");
            personDataTable.Rows.Add("John", 31, "Tokyo");
            personDataTable.Rows.Add("Lora", 41, "Paris");

            // Visit DataTable
            DataTable visitDataTable = new DataTable("Visit");
            shopDataSet.Tables.Add(visitDataTable);

            DataColumn numberDataColumn = new DataColumn("Number", typeof(int));
            visitDataTable.Columns.Add(numberDataColumn);

            /// Primary Key
            DataColumn[] visitPrimaryKey = { numberDataColumn };
            visitDataTable.PrimaryKey = visitPrimaryKey;

            visitDataTable.Columns.Add("Person", typeof(string));
            visitDataTable.Columns.Add("Time", typeof(DateTime));
            visitDataTable.Columns.Add("Duration", typeof(TimeSpan));

            visitDataTable.Rows.Add(1, "Paul", DateTime.Now, TimeSpan.FromMinutes(5));
            visitDataTable.Rows.Add(2, "John", DateTime.Now, TimeSpan.FromMinutes(15));
            visitDataTable.Rows.Add(3, "Paul", DateTime.Now, TimeSpan.FromMinutes(25));
            visitDataTable.Rows.Add(4, "Paul", DateTime.Now, TimeSpan.FromMinutes(35));
            visitDataTable.Rows.Add(5, "John", DateTime.Now, TimeSpan.FromMinutes(45));
            visitDataTable.Rows.Add(6, "Lora", DateTime.Now, TimeSpan.FromMinutes(55));
            visitDataTable.Rows.Add(7, "Lora", DateTime.Now, TimeSpan.FromMinutes(10));

            // Foreign Key Constraint
            ForeignKeyConstraint myForeignKeyConstraint =
                new ForeignKeyConstraint(personDataTable.Columns[0], visitDataTable.Columns[1]);
            visitDataTable.Constraints.Add(myForeignKeyConstraint);

            // Binding
            this.dataGridView1.DataSource = shopDataSet;
            this.dataGridView1.DataMember = "Person";
            this.dataGridView2.DataSource = shopDataSet;
            this.dataGridView2.DataMember = "Visit";
        }
    }
}





공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함