Переменные PHP в запросах MySQL - PullRequest
1 голос
/ 11 ноября 2009

Я использую mysql с PHP, мне просто интересно, если этот запрос,

$ query = "UPDATE tblName SET field = '$ fieldValue' WHERE field2 = '$ fieldValue2'"
приведет к нехватке памяти Ошибка в MySQL. Будет ли этот запрос
$ query = "UPDATE tblName SET field = '". $ FieldValue. "' WHERE field2 = '". $ FieldValue2. "'"
потреблять меньше памяти, чем предыдущий?

Я получаю эту ошибку: Недостаточно памяти (необходимо nnnnnnn байтов) и она указывает на запрос в том же формате, что и первый выше.

Спасибо.

Ответы [ 4 ]

1 голос
/ 11 ноября 2009

Если вы будете так кодировать, это произойдет. Не используйте такой код, пожалуйста.

1 голос
/ 11 ноября 2009

Что касается MySQL, две строки одинаковы.

Насколько велики эти значения в $fieldValue и $fieldValue2? Если они имеют размер в несколько мегабайт, попытка выделить место для переменной $query может превысить ваш предел памяти PHP - возможно, вам придется увеличить его, если вы работаете с большими данными.

0 голосов
/ 11 ноября 2009

Что ж, ошибка нехватки памяти, вероятно, вызвана тем, что значения в этих переменных просто слишком длинные. В этом случае вам следует изучить подготовленные операторы, поскольку они могут обрабатывать НАМНОГО большие значения, чем простые запросы.

0 голосов
/ 11 ноября 2009

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...