none
Resultado de um count numa label RRS feed

  • Pergunta

  • Olá

    Estou a tentar obter numa label o resultado de um count (se existirem resultados) com 2 campos de pesquisa.

    Assim criei a seguinte query no tableadapter

    select count(*) from TabelaInscritos where [Licença Atleta] = @param1, AND [ID Competição] = @param2

    Esta query chama-se fillbyPreveniratletasduplicados

    O resultado em SQl é correto mediante a informação que coloco no parametros...

    No entanto, não consigo obter o resultado desta query na label do UI.

    Dim licença as string = licençaatletalabel.text

    Dim IDcompt as string = IDCompetiçãolabel.text

    labelQTD.text = me.inscritostableadapter.fillbyPreveniratletasduplicados(licença, IDcompt)

    Esta-me aqui a faltar algo....:-)

    Agradeço desde já a vossa ajuda.


    Pedro Alves

    terça-feira, 15 de dezembro de 2015 11:48

Respostas

  • Tinha vários tipos de erros.

    No entanto utilizei um SQL select em vez de um SQL count e resolvi o meu problema.

    Dim licenca As String = AtletasLicençaAtletaLabelShow.Text

    Dim IdCompt
    As String = ProvaIDCompetiçãoTextBox.Text

    Me.Inscritos_CompeticaoTableAdapter.FillByEvitarDuplicadosCompt(Me.COMPETICAODataSet.Inscritos_Competicao,
    licenca, IdCompt)

    Desta forma tenho informação na tabela conforme os criterios de pesquisa.

    Obrigado na mesma.



    Pedro Alves

    • Marcado como Resposta Marcos SJ quarta-feira, 16 de dezembro de 2015 15:23
    quarta-feira, 16 de dezembro de 2015 11:13

Todas as Respostas

  • Olá Solid Pedro,

    Tudo bem?

    Você diz que "No entanto, não consigo obter o resultado desta query na label do UI.", qual erro está ocorrendo que o impede de fazer isto?

    Atenciosamente



    Marcos Roberto de Souza Junior

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    terça-feira, 15 de dezembro de 2015 19:16
  • Tinha vários tipos de erros.

    No entanto utilizei um SQL select em vez de um SQL count e resolvi o meu problema.

    Dim licenca As String = AtletasLicençaAtletaLabelShow.Text

    Dim IdCompt
    As String = ProvaIDCompetiçãoTextBox.Text

    Me.Inscritos_CompeticaoTableAdapter.FillByEvitarDuplicadosCompt(Me.COMPETICAODataSet.Inscritos_Competicao,
    licenca, IdCompt)

    Desta forma tenho informação na tabela conforme os criterios de pesquisa.

    Obrigado na mesma.



    Pedro Alves

    • Marcado como Resposta Marcos SJ quarta-feira, 16 de dezembro de 2015 15:23
    quarta-feira, 16 de dezembro de 2015 11:13
  • Bom dia, Pedro.

    Apesar de a solução funcionar, tenha cuidado. Ao fazer um select "completo" e depois dar um Count, tu estarás usando muito mais recursos do banco de dados.

    O ideal é, realmente, executar somente um SELECT COUNT(), pois assim a query será mais rápida e os recursos usados serão mínimos.

    Já tentaste o ExecuteScalar?

    O método ExecuteScalar serve exatamente para retornar somente um valor (no caso, teu count) e seria uma solução melhor para tua aplicação.


    Att., Rafael Simor

    quarta-feira, 16 de dezembro de 2015 13:32
  • Neste caso faço somente um select * e não um select count.

    Depois mediante os resultados registo ou não o atleta na tabela.

    Sim o executescalar seria o ideal.

    Obg a ambos!


    Pedro Alves

    quarta-feira, 16 de dezembro de 2015 14:23