sqlreader에서 왜 read가 안되는지 모르겠어요

조회수 1018회

버튼을 누르면 rows의 3번째 열의 값을 가져오는 기능을 구현중인데 , db를 읽어오지못하네요..

private void btnSearch_Click(object sender, EventArgs e)
        {
            SqlConnection conn = new SqlConnection("Data Source=YONGCHEOL;Initial Catalog=ADO;Integrated Security=True");```

           conn.Open();

            string suzy = "SELECT * FROM rankTBL where NAME='" + txtName+ "' AND CLASS='" + ClassNum+ "'";
            SqlCommand cmd = new SqlCommand(suzy, conn);
            SqlDataReader suzyread = cmd.ExecuteReader();

            if (suzyread.Read())
            {
                kor = suzyread.GetInt16(3);
                lbEng.Text = kor.ToString();
            }
            else
            {
                MessageBox.Show("read못함");
            }

            suzyread.Close();
            conn.Close();
        }

if문을 지우고 실행했을때입니다. 이미지

1 답변

  • 문법에 문제는 없어보입니다.

    혹시 다른 문제가 있다면 질문하신 내용만으로는 문제가 무엇인지 확실히 파악 할 수가 없네요.

    정확히 답변 드리기 위해선 확인해 보셔야 할 것들이 있습니다.

    일단 커넥션이 이루어졌는지 확인 해보셔야 할 것 같습니다.

    커넥션이 잘 이루어졌다면 해당 쿼리가 실행 가능한지, 결과가 예상한 대로 잘 나오는지 확인해 보셔야 합니다.

    위에서 말씀드린것들이 잘 실행된다면 쿼리 실행 결과도 내용을 확인해봐야 할것 같습니다.

    그리고 캡쳐해서 올려주신 부분은

    원래 코드에서는 if 문에서 suzyread.Read()를 실행하는데

    if문을 삭제했기때문에 데이타를 읽지 못해서 생기는 문제입니다.

답변을 하려면 로그인이 필요합니다.

Hashcode는 개발자들을 위한 무료 QnA 사이트입니다. 계정을 생성하셔야만 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 계정을 생성하셔야만 글을 작성하실 수 있습니다.