按列名显示或列出数据单元格的值

时间:2011-01-19 16:06:25

标签: c# database ole

.
.
.
OleDbDataReader getme = cmd.ExecuteReader();
           while (getme.Read())
            {
                MessageBox.Show(getme.GetString(1));
            }
.
.
.

我已经使用getme.GetString(1)在消息框中显示表中特定单元格的值。我像往常一样打开数据库,但我没有datagrid。

如何使用列名而不是整数ID,GetString(1)或GetInt32(0)等?

是不是可以选择列名而不是数值?

我在C#.NET中这样做。

2 个答案:

答案 0 :(得分:0)

你可以这两种方式:

getMe.GetOrdinal("column_name")会返回用于GetString GetInt32等的索引。如果这样做,您可以在while循环之外执行此操作,从而节省一些时间。

OleDbDataReader getMe = cmd.ExecuteReader();
int index = getMe.GetOrdinal("column_name");
while (getme.Read())
{
    MessageBox.Show(getMe.GetString(index));
}

OleDbDataReader(您的getMe)定义了一个索引器。您可以使用getMe["column_name"],然后将其简单地转换为您想要的对象类型:

OleDbDataReader getMe = cmd.ExecuteReader();
while (getme.Read())
{
    MessageBox.Show((string)getMe["column_name"]);
}

请参阅oleDbDataReader

答案 1 :(得分:0)