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;
}
Khi tôi gỡ lỗi cho đến khi dòng 7, nó là ok nhưng sau khi dr đó ném một ngoại lệ: Invalid attempt to read when no data is present.
Đó không phải là tốt như tôi có dữ liệu trong bảng với tên người dùng = sumant. Vui lòng cho tôi biết câu lệnh 'if' có chính xác hay không .........nỗ lực không hợp lệ để đọc khi không có dữ liệu hiện diện
Và làm cách nào để xóa lỗi ??
bên cạnh đó, bạn có thể muốn thử cho các dữ liệu được null sử dụng dr.IsBDNull (0) –
Câu trả lời này có thể được cải thiện, đoạn đầu tiên không chăm sóc giá trị trả về của 'dr.Read()'. Vì vậy, nếu truy vấn không trả về các bản ghi lỗi là như nhau: "Không hợp lệ để đọc khi không có dữ liệu có mặt". Thay vào đó sử dụng 'if (dr.Read()) {....}' (hoặc một vòng lặp như dưới đây). –