public static int AwaitingApprovals()
{
int numApprovals = 0;
string sql = "SELECT COUNT(Type) AS OpenforApproval FROM dbo.LeaveRequest
WHERE Type IN (2, 3, 4, 5, 6, 8, 13, 14, 16, 22)
GROUP BY MgtApproval HAVING (MgtApproval IS NULL";
//"SELECT COUNT(EffectiveDate) AS OpenforApproval FROM LeaveRequest
// GROUP BY TimeStampApproval HAVING (TimeStampApproval IS NULL)";
using (cn = new SqlConnection(ConnectionString()))
{
cn.Open();
using (cmd = new SqlCommand(sql, cn))
{
cmd.CommandType = CommandType.Text;
numApprovals = (int)cmd.ExecuteScalar();
}
}
return numApprovals;
}
Antwort
Die SQL-Syntax ist falsch. Sie haben eine öffnende Klammer nach HAVING, die keine schließende Klammer enthält. Fügen Sie eine schließende Klammer hinzu oder entfernen Sie einfach die öffnende Klammer.
string sql =
"SELECT COUNT(Type) AS OpenforApproval " +
"FROM dbo.LeaveRequest " +
"WHERE Type IN (2, 3, 4, 5, 6, 8, 13, 14, 16, 22) " +
"GROUP BY MgtApproval " +
"HAVING MgtApproval IS NULL";
Danke Guffa, haben Sie meine Syntax korrigiert und es funktioniert. – Yves
Ihre Anfrage scheint nicht korrekt zu sein.
Am Anfang kann ich nicht verstehen, die Notwendigkeit der Gruppe von & Sie fehlen ein ")" gegen Ende der SQL.
Sie scheinen eine schließende Klammer am Ende Ihrer Abfrage zu fehlen. Würde nicht dass verursachen cmd.ExecuteScalar
eine Ausnahme auslösen?
Sie verpassen eine Klammer, sondern auch Sie eine GROUP BY nicht brauchen und haben, können Sie nur einen zusätzlichen Teil Ihrer WHERE-Klausel haben.
string sql = "SELECT COUNT(Type) AS OpenforApproval FROM dbo.LeaveRequest WHERE Type IN (2, 3, 4, 5, 6, 8, 13, 14, 16, 22) AND MgtApproval IS NULL";
Hallo Robin Day, Danke auch dir. Deine Syntax funktioniert auch bei mir. – Yves
- 1. Können Sie cmd.ExecuteScalar verwenden, wenn die sproc RETURN verwendet @value
- 2. Python + Mongoengine Fehler, ein Int ist kein Int?
- 3. Warum ist neu int (*) [3] ein Fehler?
- 4. Fehler 'Kann Double nicht in Int' konvertieren
- 5. mysql INT (11) Fehler
- 6. Fehler: Aufruf von überladen 'bind (int (Klasse :: *) (int, int), Klasse *, int, int) ist mehrdeutig
- 7. Python: Int nicht iterierbaren Fehler
- 8. Fehler umwandeln kann nicht 'int **' auf 'int *' für Argument '1' bis 'int Show (int *)'
- 9. Fehler konvertieren BigDecimal int zu
- 10. Typ int * (*) (int *, int * (*)())
- 11. Fehler: ungültige Konvertierung von int zu int (*) [4] in Funktionsaufrufe
- 12. Problem, das ein Int als ein NSString
- 13. Warum int/int = int?
- 14. Ein int an char anhängen *
- 15. Ein int in OCaml umkehren
- 16. Wie deserialize [[int, int, int, int, string, string], [...]] von JSON
- 17. ein int konvertieren mit Json.Net in bool
- 18. Ich versuche, ein int [] in int [,] mit C#
- 19. PHP Int + Float. Fehler oder Standardverhalten?
- 20. Warum gibt int = int * double einen Fehler und int * = double nicht (in Java)?
- 21. C++ - Fehler: erwarteter primärer Ausdruck vor 'int'
- 22. Scala Typ Fehler mit Try [Int]
- 23. const Referenz kann ein int zugeordnet werden?
- 24. Warum funktioniert Decimal.Divide (int, int), aber nicht (int/int)?
- 25. Fehler beim Konvertieren Datentyp nvarchar in int
- 26. Str/Int-Fehler beim Drucken von Python
- 27. Konvertieren Zeichenfolge in Int Fehler in C#
- 28. Fehler: kann keine Symbolmethode finden findViewById (int)
- 29. Compiler Fehler C4430: fehlende Typspezifizierer - int angenommen
- 30. Convert int zu int []
welche Fehler? Bitte bearbeiten Sie die Frage, um den Fehler zu beschreiben. – shahkalpesh
Sie haben keine Frage gestellt. Bitte fragen Sie einen. Wenn es sich bei Ihrem Problem um eine Ausnahme handelt, veröffentlichen Sie bitte die gesamte Ausnahme. Fangen Sie es, und dann schreiben ex.ToString() –