Hier ist mein Code:
%Vor%Dies ist der Fehler:
Parameter 'body WHERE' nicht in der Liste der angegebenen Parameter gefunden
SQL: UPDATE templates_email SET title =: titel, test_emails =: testEmail, body =: body WHERE id =: templateID
Der Fehler ist in C: \ ColdFusion9 \ CustomTags \ com \ adobe \ coldfusion \ query.cfc: Zeile 108
aufgetreten
Ich kann nur annehmen, dass ich mit der Art, wie mein SQL mit den Parametern strukturiert ist, etwas falsch gemacht habe, aber nicht herausfinden kann, was es ist. Kann jemand sehen, was ich hier falsch mache?
Der Parser zum Abrufen der Params tokenet nicht auf Rückgabewerte, nur auf Whitespace (was wirklich ärgerlich ist). Versuchen Sie Folgendes:
%Vor% Die (
und )
sollten jedes Problem entfernen, bei dem der Parser nicht erkennen konnte, wo die params gestoppt und gestartet wurden.
Dieser Fehler tritt aufgrund der Tab- und Zeilenumbruchzeichen in Ihrer SQL-Anweisung auf. Normalerweise löse ich die Funktion in meiner SQL-Anweisung, um diese Zeichen zu entfernen.
%Vor%So kann Ihre setSQL () aussehen:
%Vor%oder einfach:
%Vor%ColdFusion kann verwirrt werden, wenn die SQL-Zeichenfolge zur Verwendung von Parametern analysiert wird. Der einfachste Weg, um diesen Mangel zu beheben, besteht darin, nach jedem Ihrer Parameter ein Leerzeichen einzufügen.
Da einige Texteditoren nachträgliche Leerzeichen löschen können, z. B. beim Speichern, lege ich nach jedem Leerzeichen am Ende einer Zeile einen leeren Kommentar an.
%Vor%Tags und Links coldfusion