Почему MySQL ищет столбец с именем вставки значения - PullRequest
1 голос
/ 26 марта 2012

При выполнении cfquery для MySQL MYSQL выдает ошибку «Неизвестный столбец« Вопрос »в« списке полей »следующего кода:

<cfquery name="qUpdateTheQuestion" datasource="testmaster">
INSERT INTO ETrueFalseQuestions
VALUES (<cfoutput>#newTypeID#</cfoutput>, `<cfoutput>#FORM.Question#</cfoutput>`, <cfoutput>#FORM.truefalse#</cfoutput>

Я перепробовал все, что мог, чтобы попытатьсярешить эту проблему, а также некоторые предложения, которые я нашел, пытаясь найти решение, например, использование обратных кавычек вместо одинарных кавычек.

Я также не понимаю, почему он ищет столбец с именем Question, так как это значение FORM.Question и изменяется в зависимости от того, что введено в форму.Любые предложения будут с благодарностью.

1 Ответ

7 голосов
/ 26 марта 2012

этот запрос не имеет смысла для меня

обычно это должно выглядеть как

INSERT INTO ETrueFalseQuestions (IdColumnName, questionColumnName, questionTrueFalse)     
VALUES ( #newTypeID#, '#form.Question#', #form.truefalse# )

Так что вам нужно

  1. список столбцов
  2. не использовать <cfoutput> в течение <cfquery>
  3. ставьте одинарные кавычки вокруг строковых значений или используйте <cfqueryparam>

PS: имена столбцов, которые я использовал, составлены, вам нужно исправить их, чтобы они соответствовали вашим.

...