行数无法输入有多少行数

本文关键字:多少 输入 | 更新日期: 2023-09-27 18:34:12

这就是

我遇到问题的方式,我想找出我的网站有多少用途

我试过这样做。

SqlConnection conn1 = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ToString());
    SqlCommand cmd1 = new SqlCommand();
    cmd1.Connection = conn1;
    cmd1.CommandText = "SELECT COUNT(*) FROM brugere";
    conn1.Open();
    SqlDataReader reader3 = cmd1.ExecuteReader();
    if (reader3.HasRows)
    {
        LabelBrugerantal.Text = reader3["id"].ToString();
    }
    conn1.Close();

它在这里出现错误:

编号

说明:执行当前 Web 请求期间发生未经处理的异常。请查看堆栈跟踪,了解有关错误及其在代码中起源位置的详细信息。

异常详细信息:System.IndexOutOfRangeException: id

源错误:

Line 67:         if (reader3.HasRows)
Line 68:         {
Line 69:             LabelBrugerantal.Text = reader3["id"].ToString();
Line 70:         }
Line 71:         conn1.Close();

行数无法输入有多少行数

查询

中没有返回id列。您可以执行以下操作:

cmd1.CommandText = "SELECT COUNT(*) AS id FROM brugere";

但这听起来很奇怪:-)

执行所需操作的首选方法是 SqlCommand.ExecuteScalar。您的代码如下所示(未经测试):

cmd1.CommandText = "SELECT COUNT(*) FROM brugere";
// ...
LabelBrugerantal.Text = ((Int32)cmd1.ExecuteScalar()).ToString();

查询中获取单个标量值时,无需打开读取器并检查返回的行