首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用OleDbDataReader检索值

使用OleDbDataReader检索值
EN

Stack Overflow用户
提问于 2010-08-12 19:25:12
回答 3查看 5.9K关注 0票数 1

让我们假设我的sql查询是

代码语言:javascript
复制
  select customerDetials.custid,TestTable.col1 from CustomerDetails INNER JOIN TestTable  on CustomerDetails.custid=TestTables.custid where CustomerDetails.custid>0

我想使用OleDbDataReader来检索这些行。

我就是这样用的

代码语言:javascript
复制
while (dataReader.Read())
{
       string str= dataReader["customerDetials.custid"].ToString();
}

但是问题在这里,连接在那里,所以如果我像上面那样给出列名,它会抛给我一个异常,我不能使用索引,或者我不能改变sql查询.So,有没有办法用列名检索数据?

EN

回答 3

Stack Overflow用户

发布于 2010-08-12 19:26:43

你有没有试过使用just

代码语言:javascript
复制
while (dataReader.Read()) { 
    string str= dataReader["custid"].ToString();    
}
票数 1
EN

Stack Overflow用户

发布于 2010-08-12 19:31:08

我想你想要的是。

代码语言:javascript
复制
string str = dataReader.GetInt32(0).ToString();

其中,(0)表示查询中列的从零开始的序号位置

票数 0
EN

Stack Overflow用户

发布于 2013-05-28 17:38:34

如果您不知道查询将返回什么,您将不得不:

获取FieldCount (结果集中的列数),然后遍历检索数据的DataReader的每一行中的字段(列)。

您将需要以下一种或多种方法:

  • GetFieldType(int) -返回列的类型。
  • GetDataTypeName(int) -返回后端数据库列类型的名称。
  • GetName(int) -返回列名。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3467093

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档