기본 콘텐츠로 건너뛰기

[C#][DB][ADO.NET] SqlCommandBuilder <- SqlCommand의 자동화


public partial class Form1 : Form
    {
        string strConn = "server=.\\SQLEXPRESS;database=example;uid=sa;pwd=12345";
        SqlConnection Conn;
        SqlDataAdapter dataAdapter;
        DataSet dataSet;
        SqlCommandBuilder cmdBuilder;

        public Form1()
        {
            InitializeComponent();
        }     

        private void Form1_Load(object sender, EventArgs e)
        {
            Conn = new SqlConnection(strConn);
            dataAdapter = new SqlDataAdapter("SELECT * FROM tblEx01", Conn);           
            dataSet = new DataSet();
            cmdBuilder = new SqlCommandBuilder(dataAdapter);

            dataAdapter.Fill(dataSet, "tblEx01");
            dataGridView1.DataSource = dataSet.Tables["tblEx01"];
        }
        // 입력
        private void button1_Click(object sender, EventArgs e)
        {           
            DataRow NewRow = dataSet.Tables["tblEx01"].NewRow();
            NewRow["name"] = textBox1.Text;
            NewRow["age"] = textBox2.Text;
            dataSet.Tables["tblEx01"].Rows.Add(NewRow);
            dataAdapter.Update(dataSet, "tblEx01");

            dataSet.Clear();
            dataAdapter.Fill(dataSet, "tblEx01");
            dataGridView1.DataSource = dataSet.Tables["tblEx01"];
        }
        // 수정
        private void button2_Click(object sender, EventArgs e)
        {
            int id = (int)dataGridView1.SelectedCells[0].Value;
           
            string strFilter = "id=" + id;
            DataRow[] FindRow = dataSet.Tables["tblEx01"].Select(strFilter);
            FindRow[0]["name"] = textBox1.Text;
            FindRow[0]["age"] = int.Parse(textBox2.Text);

            dataAdapter.Update(dataSet, "tblEX01");           
            dataGridView1.DataSource = dataSet.Tables["tblEx01"];
        }
        // 삭제
        private void button3_Click(object sender, EventArgs e)
        {
            int id = (int)dataGridView1.CurrentRow.Cells["id"].Value;              
           
            string strFilter = "id=" + id;
            DataRow[] FindRow = dataSet.Tables["tblEx01"].Select(strFilter);
            FindRow[0].Delete();

            dataAdapter.Update(dataSet, "tblEX01");          
            dataGridView1.DataSource = dataSet.Tables["tblEx01"];
        }
        // 새로고침
        private void button4_Click(object sender, EventArgs e)
        {
            dataSet.Clear();
            dataAdapter.Fill(dataSet, "tblEx01");
            dataGridView1.DataSource = dataSet.Tables["tblEx01"];
        }
    }

이 블로그의 인기 게시물

[C#] 연산자 목록(Operators)

[C#] C# 프로그램의 일반적인 구조(A skeleton of a C# program)

// A skeleton of a C# program  using System; namespace YourNamespace {     class YourClass     {     }     struct YourStruct     {     }     interface IYourInterface      {     }     delegate int YourDelegate();     enum YourEnum      {     }     namespace YourNestedNamespace     {         struct YourStruct          {         }     }     class YourMainClass     {         static void Main(string[] args)          {             //Your program starts here...         }     } } By Microsoft.MSDN :: .NET Guide Docs

[C#] 간결한 식(expression)

[ 기본 간결식 ] member => expression; (example 1 : 메서드) using System; public class Person { public Person(string firstName, string lastName) { fname = firstName; lname = lastName; } private string fname; private string lname; public override string ToString() => $"{fname} {lname}".Trim(); public void DisplayName() => Console.WriteLine(ToString()); } class Example { static void Main() { Person p = new Person("Mandy", "Dejesus"); Console.WriteLine(p); p.DisplayName(); } } (example 2 : 생성자) public class Location {    private string locationName;    public Location(string name) => Name = name;    public string Name    {       get => locationName;       set => locationName = value;    } } (example 3 : 종료자) using System; public class Destroyer {    public override string ToString() => GetT...