none
count no select sqlserver RRS feed

  • Pergunta

  • Uso VS2010, aspnet4, c sqlserver 2008

    como faço para contar quantos registros este select trouxe

    -------

    SqlConnection con = new SqlConnection(conexao);
                    con.Open();
                    SqlDataReader rd;

                    SqlCommand cmd = new SqlCommand();
                    cmd.CommandText = "SELECT Comment FROM aspnet_Membership WHERE Comment = @codigoPessoa ";
                    cmd.Parameters.Add(new SqlParameter("@codigoPessoa", codigoPessoa));
                    cmd.Connection = con;

    ------


    Álvaro Luiz

    terça-feira, 13 de agosto de 2013 18:06

Respostas

  • olá Romy,

    a solução que voce passou trouxe no count o código que foi passado como parâmetro, e não a quantidade de linhas do select.

    mesmo assim obrigado pela tentativa 


    Álvaro Luiz

    Cara acho que por coincidência deve ter trazido o mesmo tanto de linhas referente ao código que vc passou por parametro, pois o trecho de código esta ok.

    Fiz testes antes de passar pra vc.

    Obs. Lembresse que a tabela que vc esta fazendo o where o campo referente (Comment) é um ntext, portanto se vc estiver passado o parametro como uma string não esqueça de fazer deste modo.

    cmd.CommandText = "SELECT Count(*) FROM aspnet_Membership where convert(varchar(max),comment) =  N'ola'";

    Abraço!

    • Marcado como Resposta Álvaro Luiz quarta-feira, 14 de agosto de 2013 17:50
    quarta-feira, 14 de agosto de 2013 15:11

Todas as Respostas

  • Cara tem varias maneiras mas tem um porém vc quer trazer apenas o count?

    Abraço.

    terça-feira, 13 de agosto de 2013 18:34
  • SqlConnection con = new SqlConnection(conexao);
                    con.Open();
                    SqlDataReader rd;
    
                    SqlCommand cmd = new SqlCommand();
                    cmd.CommandText = "SELECT Count(*) FROM aspnet_Membership WHERE Comment = @codigoPessoa ";
                    cmd.Parameters.Add(new SqlParameter("@codigoPessoa", codigoPessoa));
                    cmd.Connection = con;


    Leonardo D'Amato Microsoft .Net Developer

    terça-feira, 13 de agosto de 2013 18:40
  • Quero apenas colocar num label a quantidade de linhas ou registros que a consulta trouxe

    Ex:

    Label1.Text = qtdedeRegistros;


    Álvaro Luiz

    terça-feira, 13 de agosto de 2013 18:58
  • Cara basta fazer isso.

    int count = 0;
          SqlConnection con = new SqlConnection(conexao);
          SqlCommand cmd = new SqlCommand();
          cmd.CommandText = "SELECT Count(*) FROM aspnet_Membership WHERE Comment = @codigoPessoa ";
          cmd.Parameters.Add(new SqlParameter("@codigoPessoa", codigoPessoa));
          cmd.Connection = con;
          if (cmd.Connection.State == System.Data.ConnectionState.Closed)
                  cmd.Connection.Open();
          count = (int)cmd.ExecuteScalar();
          if (cmd.Connection.State == System.Data.ConnectionState.Open)
            cmd.Connection.Close();
    
    
    idlabel.text = count.tostring();
    abraço!

    terça-feira, 13 de agosto de 2013 19:12
  • olá Romy,

    a solução que voce passou trouxe no count o código que foi passado como parâmetro, e não a quantidade de linhas do select.

    mesmo assim obrigado pela tentativa 


    Álvaro Luiz

    quarta-feira, 14 de agosto de 2013 12:08
  • olá Romy,

    a solução que voce passou trouxe no count o código que foi passado como parâmetro, e não a quantidade de linhas do select.

    mesmo assim obrigado pela tentativa 


    Álvaro Luiz

    Cara acho que por coincidência deve ter trazido o mesmo tanto de linhas referente ao código que vc passou por parametro, pois o trecho de código esta ok.

    Fiz testes antes de passar pra vc.

    Obs. Lembresse que a tabela que vc esta fazendo o where o campo referente (Comment) é um ntext, portanto se vc estiver passado o parametro como uma string não esqueça de fazer deste modo.

    cmd.CommandText = "SELECT Count(*) FROM aspnet_Membership where convert(varchar(max),comment) =  N'ola'";

    Abraço!

    • Marcado como Resposta Álvaro Luiz quarta-feira, 14 de agosto de 2013 17:50
    quarta-feira, 14 de agosto de 2013 15:11