기본 콘텐츠로 건너뛰기

[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"];
        }
    }

이 블로그의 인기 게시물

Devexpress GridView 팁들

GridView 를 사용하다 보면 Cell 들을 Merge할 때가 발생합니다. 따라서, Cell Merge하는 방법은 아래와 같이 할 수 있습니다. 1. 세로 Merge GridView.OptionsView.AllowCellMerge = true; 이와 같이 옵션을 설정하면, 기본적으로 Column 단위로 같은 Value 값을 가지는 Cell 단위로 Merge를 합니다. GridColumn.OptionsColumn.AllowMerge = false; 이와 같이 할경우 해당 Column은 Merge를 실행하지 않습니다. GridView.CellMerge Event를 통해 사용자 조건별로 Merge를 할 수 있습니다 void gridView1_CellMerge(object sender, DevExpress.XtraGrid.Views.Grid.CellMergeEventArgs e) {                if (e.Column.FieldName == "Q'TY")     {         int iValue1 = Convert.ToInt32(e.CellValue1);         int iValue2 = Convert.ToInt32(e.CellValue2);         e.Merge = true;         e.Handled = true;     } } 2. 가로 Merge 가로 Merge 같은 경우는 GridView에서 옵션으로 기본 제공하지 않습니다. 따라서 해당 Cell을 강제적으로 다시 그려주는 등 여러 가지 Event를 사용해야 합니다. 따라서 Devexpress 에서 예제로 나오 있는 곳을 링크하는 것으로 대신합니다. Merge cells Horizontally in GridView https://www.devexpress.com/Support/Center/Example/Details/E2472/how-to-merge-cells-horizontally-in-gr

[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