首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >从SqlDataReader读取数据

从SqlDataReader读取数据
EN

Stack Overflow用户
提问于 2010-10-26 03:29:28
回答 12查看 531.3K关注 0票数 170

我有一个SQL Server 2008数据库,我正在后端处理它。我正在研究asp.net/C#。

代码语言:javascript
复制
SqlDataReader rdr = cmd.ExecuteReader();  
while (rdr.Read())  
{              
   //how do I read strings here????  
}  

我知道读者是有价值观的。我的SQL命令是从一个表中只选择一列。该列仅包含字符串。我想逐个读取阅读器中的字符串(行)。我该怎么做呢?

EN

回答 12

Stack Overflow用户

发布于 2010-10-26 03:33:06

代码语言:javascript
复制
using(SqlDataReader rdr = cmd.ExecuteReader())
{
    while (rdr.Read())
    {
        var myString = rdr.GetString(0); //The 0 stands for "the 0'th column", so the first column of the result.
        // Do somthing with this rows string, for example to put them in to a list
        listDeclaredElsewhere.Add(myString);
    }
}
票数 164
EN

Stack Overflow用户

发布于 2010-10-26 03:32:37

代码语言:javascript
复制
string col1Value = rdr["ColumnOneName"].ToString();

代码语言:javascript
复制
string col1Value = rdr[0].ToString();

这些是objects,所以您需要对它们进行强制转换或.ToString()

票数 121
EN

Stack Overflow用户

发布于 2010-10-26 03:32:55

将从"ColumnName"所在的数据库返回的begin列的名称放入其中。如果是字符串,则可以使用.ToString()。如果是另一种类型,则需要使用System.Convert进行转换。

代码语言:javascript
复制
SqlDataReader rdr = cmd.ExecuteReader();
while (rdr.Read())
{
    string column = rdr["ColumnName"].ToString();
    int columnValue = Convert.ToInt32(rdr["ColumnName"]);
}
票数 37
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4018114

复制
相关文章

相似问题

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