Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Contagem Sempre retorna -1 SQL Server. ASP.NET C#


Isso porque ExecuteNonQuery não retorna o resultado da consulta, apenas a executa no servidor SQL. O valor de retorno é o número de linhas afetadas por sua instrução, -1 quando a instrução não afeta nenhuma linha. ExecuteNonQuery (como o nome indica) não se destina a retornar resultados de consulta, mas sim a executar uma instrução que altera dados (como INSERT, DELETE, UPDATE). Os documentos informam:

Você poderia usar:
count = (int)command.ExecuteScalar();

Para obter a contagem que você está procurando. Há também um exemplo nos documentos para ExecuteScalar .