【问题标题】:How to get specific column value in ado.net如何在 ado.net 中获取特定列的值
【发布时间】:2015-11-25 10:25:40
【问题描述】:

我有一个 sql 查询,结果为

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

我正在尝试获取 2nd Column 的值 2nd Row

这是-565500

请告诉我如何实现这一目标

【问题讨论】:

    标签: c# sql sql-server datatable sqldatareader


    【解决方案1】:

    你有多种方式,例如:

    使用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;
               }
            }
        }
    }
    

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-04
      • 1970-01-01
      相关资源
      最近更新 更多