ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • ACCESS를 사용한 DB연결 -3 (PhoneBook)
    C#/WindowForm 2022. 5. 18. 16:13

    저번글에 이어서 검색과 수정버튼을 제작하겠습니다.

     

    검색버튼

      // 검색
        private void btnSearch_Click(object sender, EventArgs e)
        {
          if (txtSId.Text == "" &&
            txtSName.Text == "" &&
            txtPhone.Text == "")
            return;
    
          connOpen();
    
          string sql = string.Format("SELECT * FROM StudentTable WHERE ");
          if (txtSId.Text != "")
            sql += "SId = " + txtSId.Text;
          else if(txtSName.Text != "")
            sql += "SName = '" + txtSName.Text + "'";
          else if(txtPhone.Text != "")
            sql += "Phone = '" + txtPhone.Text + "'";
    
          comm = new OleDbCommand(sql, conn);
          //MessageBox.Show(sql);
          
          lstStudent.Items.Clear(); // 리스트박스를 지워주고
    
          reader = comm.ExecuteReader();   // DisplayStudent() 에서 복사해 온 부분
          while (reader.Read())
          {
            string x = "";
            x += reader["ID"] + "\t";
            x += reader["SId"] + "\t";
            x += reader["SName"] + "\t";
            x += reader["Phone"];
            lstStudent.Items.Add(x);
          }
          reader.Close();
    
          conn.Close();
          conn = null;
        }

    첫줄에 아이디, 이름, 전화번호가 모두 없을 경우 리턴합니다.

    존재한다면  string sql = string.Format("SELECT * FROM StudentTable WHERE ");에 아이디, 이름, 전화번호 순으로 먼저 존재하는 값을 뒤에 추가해줍니다.

    그 후 리스트박스를 초기화 해주고 검색한 값을 가져옵니다.

     

    수정버튼

     private void btnUpdate_Click(object sender, EventArgs e)
        {
          connOpen();
    
          string sql = string.Format("UPDATE StudentTable SET SId={0}, SName='{1}', Phone='{2}' WHERE ID={3}",
            txtSId.Text, txtSName.Text, txtPhone.Text, txtID.Text);
    
          comm = new OleDbCommand(sql, conn);
          int x = comm.ExecuteNonQuery();
          if (x == 1)
            MessageBox.Show("수정 성공!");
          connClose();
        }

    UPDATE를 사용해 DB에 저장된 값을 수정(업데이트)합니다.

    만약 수정을 성공할시 1값을 반환받고 if문을 통해 MessageBox를 사용합니다.

     

    실행결과

    'C# > WindowForm' 카테고리의 다른 글

    C# Chart 그리기- 2  (0) 2022.06.01
    C# Chart그리기-1  (0) 2022.06.01
    dataTimePicker  (0) 2022.04.06
    Timer 사용  (0) 2022.04.06
    ComboBox를 사용한 학점 계산기  (0) 2022.04.06

    댓글

Designed by Tistory.