当前位置: 首页 > 面试题库 >

如何从SqlDataReader中读取SQL Server COUNT

羊舌庆
2023-03-14
问题内容

我正在尝试使用C#查找表的计数,SqlDataReader但是我一直在获取

不存在数据时进行无效的读取尝试

我的代码:

string sql = "SELECT COUNT(*) FROM [DB].[dbo].[myTable]";

SqlCommand cmd = new SqlComman(sql, connectionString);
SqlDataReader mySqlDataReader = cmd.ExecuteReader();

int count = mySqlDataReader.GetInt32(0); // Here is where I get the error.

我知道我与数据库之间存在有效的连接,因为我可以在许多地方进行读写操作,但是我无法正确读取数据库有何特别之处COUNT(*)?我该如何int count填充?


问题答案:

您必须阅读:

if (mySqlDataReader.Read()) {
  count = mySqlDataReader.GetInt32(0);
}

或者,您可以只使用ExecuteScalar:

int count = (int)cmd.ExecuteScalar();

定义为:

执行查询,并返回查询返回的结果集中第一行的第一列。其他列或行将被忽略。



 类似资料:
  • 问题内容: 我正在用C#编写一种从WCF服务查询SQL Server Express数据库的方法。我必须使用ADO.NET来做到这一点(然后稍后用LINQ重写它)。 该方法采用两个字符串(),然后从匹配记录中返回“ Health Insurance NO” (健康保险否)属性。我想将其读入列表(还有一些其他属性也可以检索)。 当前代码返回一个空列表。我要去哪里错了? 问题答案: 您正在尝试加载经>

  • 问题内容: 在我的数据库中,我具有NextStatDistanceTime值作为浮点数。执行“ ”行时,出现错误 系统无效的强制转换异常 如何在此代码中从sql命令获取浮点值? 这是我的代码: 问题答案: 我想是时候放一张桌子了。 T-SQL类型名称 相当于.NET C#类型名称 `DataReader` 方法 `FLOAT` `System.Double` `double` `IDataRead

  • 问题内容: 我的存储过程: 在我的C#代码中 有人可以告诉我我做错了什么吗?谢谢你。 问题答案: 我的猜测是,该值将以而不是装箱返回。取消装箱时,类型必须 完全 正确。因此,假设我是对的,但事实并非如此,您可以使用: 它会工作。不过,这很丑陋。如果真正使用单精度值, 则 使用它应该正确,而且(IMO)情况更清楚。 __ 另一方面,您的数据 实际上 可能以的形式从数据库中返回,在这种情况下,您应该(

  • 问题内容: 我知道如何读取字节,但是如何在Python中读取位? 我只需要从二进制文件中读取5位(而不是8位[1字节]) 有什么想法或方法吗? 问题答案: Python一次只能读取一个字节。您需要读完整的字节,然后从该字节中提取所需的值,例如 或者,如果您想要5个最低有效位,而不是5个最高有效位: 一些其他有用的位操作信息可以在这里找到:http : //wiki.python.org/moin/

  • 我已经创建了可执行的jar文件(使用Eclipse),有一组图像(.png)文件要嵌入到jar中。因此,我添加了一个源文件夹,其中包含项目中文件夹中的所有图像。代码必须访问这些文件才能使用

  • 我无法找出是否可以在pom.xml文件中读取Spring的application.properties中的任何数据。 拜托,有人能帮我吗? 谢谢你。