-
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