понедельник, 9 июля 2012 г.

Об отладке mysql-запроса


Часто случается, что запрос не правильный, но почему именно - понять сложно.
Например, "SELECT * FROM `table` WHERE `id`=$id" выводит ошибку, но вы не можете понять где и почему.
Есть простой способ это выяснить.
Стоит только сделать echo "SELECT * FROM `table` WHERE `id`=$id"; и вы увидите сам запрос таким, каким он подаётся в базу данных. И обычно причина в том, что $id имеет пустое либо неправильное значение. С помощью echo запроса эту ошибку можно запросто увидеть.
Своего времени это мне подсказал Gemorroj, и я считаю, что это очень и очень полезный способ просмотра, если для этого нету встроенного класса для отладки запросов.

1 комментарий:

  1. куда удобнее использовать систему логирования и собственные функции, такие как выборка строки в массив, выборка одного элемента, выборка таблицы в многомерный массив.
    За функции спасибо Denvas`у, теперь их везде юзаю:)

    ОтветитьУдалить