COUNT Feld falsch oder Syntaxfehler

8

Was wäre der Fehler, wenn ich die folgende Fehlermeldung erhalte:

  

Schwerwiegender Fehler: Nicht abgefangene Ausnahme 'PDOException' mit Nachricht 'SQLSTATE [07002]: [Microsoft] [ODBC-Treiber 11 für SQL Server] COUNT-Feld falsch oder Syntaxfehler' ...

Dies ist die Abfrage, die ich verwende

%Vor%

Ich habe Fragen in SO durchsucht, aber niemand war ähnlich oder hilfreich.
Vielen Dank im Voraus.

Bearbeiten: Diese Abfrage funktioniert einwandfrei, wenn Sie sie mit Microsoft SQL Server Management Studio ausführen, aber wenn Sie PDO verwenden, erhalte ich den Fehler.

    
lingo 04.12.2015, 13:35
quelle

3 Antworten

15
  

Die Anzahl der in SQLBindParameter angegebenen Parameter war kleiner als   die Anzahl der Parameter in der SQL-Anweisung in enthalten   * Anweisungstext. SQLBindParameter wurde aufgerufen, wobei ParameterValuePtr auf einen Nullzeiger gesetzt wurde, StrLen_or_IndPtr nicht auf SQL_NULL_DATA oder   SQL_DATA_AT_EXEC und InputOutputType nicht auf SQL_PARAM_OUTPUT gesetzt, also   dass die Anzahl der in SQLBindParameter angegebenen Parameter war   größer als die Anzahl der Parameter in der enthaltenen SQL-Anweisung   in * Anweisungstext. SQLExecute-Funktion

Platzhalter müssen eindeutige Namen haben, selbst wenn sie den gleichen Wert haben

%Vor%     
Taalaibek Ashirov 08.12.2015, 14:42
quelle
1

Alle Spalten, die keine arithmetische Funktion haben, müssen in die GROUP BY -Klausel gehen. siehe unten:

%Vor%     
M.Ali 04.12.2015 13:39
quelle
0

Eine weitere Möglichkeit, wenn Sie vermeiden möchten, dass Daten mehrfach übergeben werden (ersetzen Sie den Datentyp von @artid durch den korrekten Datentyp):

%Vor%

Dies funktioniert nur in einem RDBMS, das DECLARE-Anweisungen unterstützt.

    
Aaron Mason 11.03.2018 22:51
quelle

Tags und Links