如何在ado.net中获取特定的列值



我有一个sql查询,它给出的结果是

Column 1   : Column 2
-350000    : -349000
-217500    : -565500

我正试图得到2nd Row2nd Column的值

-565500

请告诉我如何实现

您有多种方法,例如:

使用SqlDataAdapter填充DataTable:

DataTable table = new DataTable();
using (var con = new SqlConnection("connection string"))
using (var da = new SqlDataAdapter("Sql-Query", con))
    da.Fill(table);
object secondRowSecondColumnValue = table.Rows[1][1];

如果你知道它是int:

int value = table.Rows[1].Field<int>(1);

使用SqlDataReader不那么简洁:

int? value = null;
using (var con = new SqlConnection("connection string"))
using(var cmd = new SqlCommand("Sql-Query", con))
{
    con.Open();
    int row = 0;
    using (var rd = cmd.ExecuteReader())
    {
        while (rd.Read())
        {
            row++;
           if (row == 2)
           {
               value = rd.GetInt32(1);
               break;
           }
        }
    }
}

如果你只想要这个值,最好的选择是首先只选择这个值。

相关内容

  • 没有找到相关文章

最新更新