c# - 我如何从 c# 中的 mdr.Read() 命令中只读取一条记录

标签 c# mysql .net database

x 是字符串数组,我想从数据库中的表中读取特定行,例如:我只想读取第二行。

while (mdr.Read())
{
    x = mdr[1].ToString().Split(' ');
    y = 0;
    while (y < x.Length)
    {
        MessageBox.Show(x[y]);
        y++;
    }                        
}

最佳答案

您应该实现一个在每次迭代时递增的计数器,并且仅当该计数器达到您想要的数字时才执行您的代码。 即:

int i = 0;    
while (mdr.Read())
    {
      if(i == 1) //i is 1 when it's the second row
      {
          x = mdr[1].ToString().Split(' ');
          y = 0;
          while (y < x.Length)
          {
              MessageBox.Show(x[y]);
              y++;
          } 
      }
      i++;                       
    }

另请记住对查询中的数据进行排序,因为如果未指定这样做,数据库并不总是以相同的顺序返回数据!

关于c# - 我如何从 c# 中的 mdr.Read() 命令中只读取一条记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47194486/

相关文章:

c# 如何按值列对排序列表进行排序

java - 分布式计算应用

c# - 读取大量字符并更新文本框

c# - 使用字符串数组动态填充功能区设计组合框?

c# - 系统时间关闭时如何使用 SQL Server 的 GETDATE()?

php - 将 jQuery 保存位置拖放到 mysql 数据库

java - SQL 语句在 Workbench 中有效,但在 Java 中无效

sql - MYSQL - 为表中的每个类别选择前 4 条记录

c# - 为 Dapper 提供一个要映射到的类实例,而不是总是实例化一个新实例?

c# - 如何在 C# 中向 UserControl 添加事件?