Ошибка "Нет данных для столбца строки", возвращаемая "OleDbDataReader"

Я пытаюсь использовать OleDbDataReader, но он возвращает эту ошибку:

No data exists for the row column

Я использую базу данных Access. Может ли кто-нибудь помочь мне определить источник этой ошибки? Вот мой код:

private void UpdateStudent_Load(object sender, EventArgs e)
{
    OleDbDataAdapter da = new OleDbDataAdapter();

    da.SelectCommand = new OleDbCommand(
        "select * from Students where SID= " + U_ID, con);

    con.Open();
    OleDbDataReader rd = da.SelectCommand.ExecuteReader();

    if (rd.Read())
    {
        //txtId.Text = U_ID;
        txtId.Text = rd["SID"].ToString();
    }

    rd.Close();
}

1 ответ

Вы можете попробовать с этим кодом

var queryString = "select * from Students where SID= " + U_ID, con;
using (OleDbConnection connection = new OleDbConnection(connectionString))
{
    OleDbCommand command = new OleDbCommand(queryString, connection);
    connection.Open();
    OleDbDataReader reader = command.ExecuteReader();

    while (reader.Read())
    {
        txtId.Text = reader["SID"].ToString();
    }
    reader.Close();
}
Другие вопросы по тегам