private void button1_Click(object sender, EventArgs e)
{
string name;
name = textBox5.Text;
SqlConnection con10 = new SqlConnection("con strn");
SqlCommand cmd10 = new SqlCommand("select * from sumant where [email protected]");
cmd10.Parameters.AddWithValue("@name",name);
cmd10.Connection = con10;
cmd10.Connection.Open();//line 7
SqlDataReader dr = cmd10.ExecuteReader();
}
if (textBox2.Text == dr[2].ToString())
{
//do something;
}
Kiedy debugowanie aż linii 7, to jest ok, ale po tym dr zgłasza wyjątek: Invalid attempt to read when no data is present.
to nie jest możliwe, ponieważ mam dane w tabeli z nazwą użytkownika = sumant. Proszę mi powiedzieć, czy stwierdzenie "jeśli" jest prawidłowe, czy nie .........Nieprawidłowa próba odczytu, gdy dane nie występuje
Jak mogę usunąć błąd?
Poza tym, może chcesz spróbować dla danych za pomocą dr.IsBDNull być zerowy (0) –
Ta odpowiedź można poprawić, pierwszy fragment nie dbać o zwracana wartość 'dr.Read()'. Więc jeśli zapytanie nie zwraca rekordów, błąd jest taki sam: "Nieprawidłowa próba odczytu, gdy nie ma danych". Zamiast tego użyj 'if (dr.Read()) {....}' (lub pętli, jak poniżej). –