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;
}
Когда я отладки до линии 7, это нормально, но после того, что доктор бросает исключение: Invalid attempt to read when no data is present.
Это не возможно, как у меня есть данные в таблице с именем = sumant. Пожалуйста, сообщите мне, является ли утверждение «если» правильным или нет .........Неверная попытка чтения при отсутствии данных присутствует
И как удалить ошибку ??
кроме того, вы можете захотеть попробовать данные утратившими используя dr.IsBDNull (0) –
Этот ответ может быть улучшена, первый фрагмент кода не заботиться о возвращаемое значение 'dr.Read()'. Поэтому, если запрос не возвращает записи, ошибка будет такой же: «Неверная попытка прочитать, когда данных нет». Вместо этого используйте 'if (dr.Read()) {....}' (или цикл, как показано ниже). –