sql >> Databáze >  >> RDS >> Sqlserver

Počet Vždy vrátí -1 SQL Server. ASP.NET C#

Důvodem je, že ExecuteNonQuery nevrací výsledek dotazu, pouze jej provede na SQL serveru. Vrácená hodnota je počet řádků ovlivněných vaším příkazem, -1, pokud příkaz neovlivňuje žádné řádky. ExecuteNonQuery (jak název napovídá) není určen pro vracení výsledků dotazu, ale spíše pro spuštění příkazu, který mění data (jako INSERT, DELETE, UPDATE). Dokumenty uvádí:

Můžete použít:

count = (int)command.ExecuteScalar();

Chcete-li získat počet, který hledáte. Příklad je také v dokumentech pro ExecuteScalar .



  1. Jak vytvořit skutečný vztah jeden k jednomu na serveru SQL Server

  2. Jak programově vytvářet databáze MySQL na sdílených plánech hostování Linuxu

  3. Optimalizace dotazů SQL — Jak zjistit, kdy a zda je to potřeba

  4. Dotaz Mysql SELECT fungoval, nyní ne o 2 minuty později (beze změn)