Як знайти помилку в sql-запиті

Відео: Як найпростіше знайти помилку в SQL запиті?

Як знайти помилку в SQL-запиті

Відео: Типові помилки при написанні запитів на 1С. Євген Гилев

SQL-запит - це те, що або працює добре, або не працює взагалі, частково він ніяк працювати не може, на відміну, наприклад, від того ж PHP. Як наслідок, знайти помилку в SQL-запиті, просто розглядаючи його - важко, особливо якщо цей запит забезпечений цілою купою JOIN і UNION. Однак, в цій статті я розповім про методі пошуку помилок в SQL-запиті.

Оскільки зазвичай в SQL-запит підставляються якісь змінні в PHP, то необхідно його спочатку вивести. Зробити це можна, наприклад, так:

Відео: SQL для початківців. SQL запит SELECT ORDER BY LIMIT. Кількість рядків при вибірці з бази даних

lt ;?php
$ a
=5-
$ query
="SELECT FROM` table` WHERE `id` = `$ a`"-
$ result_set
= $ mysqli-gt;query($ query) -// Не працює
echo $ query
-// Виводимо запит, який відправляється
?gt;



В результаті, скрипт виведе такий запит: SELECT FROM `table` WHERE` id` = `5`. Тепер щоб знайти помилку в ньому, треба зайти в phpMyAdmin, відкрити базу даних, з якої відбувається робота, відкрити вкладку "SQL"І спробувати виконати запит.




І ось тут вже помилка буде показана, не в самій зрозумілій формі (іноді прямо точно описує помилку), але вона буде. Ось що написав phpMyAdmin: "# 1064 - You have an error in your SQL syntax- check the manual that corresponds to your MySQL server version for the right syntax to use near `FROM `table` WHERE` id` =` 5 `ORDER BY `table`.`id `ASC LIMIT 0, 30 `at line 1". Це означає, що помилка поряд з FROM. Придивляємося до цього виділеному нами невеликій ділянці і виявляємо, що ми забули поставити "*". Виправляємо відразу в phpMyAdmin цю помилку, переконуємося, що запит спрацював і після цього йдемо виправляти помилку вже в коді.

За допомогою цього методу я знаходжу абсолютно все помилки в SQL-запиті, які мені не вдається виявити безпосередньо при огляді в PHP-коді.

Відео: SQL для початківців (DML): SELECT DISTINCT / ALL, Урок 18!

Сподіваюся, тепер і Ви зможете знайти помилку в будь-якому SQL-запиті.

Поділися в соціальних мережах:

Схожі
Як зробити підписку на сайті (v2)Як зробити підписку на сайті (v2)
Function fetch_assoc () on a non-objectFunction fetch_assoc () on a non-object
Запит sql для сортування результату вибіркиЗапит sql для сортування результату вибірки
Запит sql на вибірку записівЗапит sql на вибірку записів
Пошук по базі даних з сортуванням за релевантністюПошук по базі даних з сортуванням за релевантністю
Як дізнатися кількість записів в sql-вибірціЯк дізнатися кількість записів в sql-вибірці
Відправлення запитів до бази даних в phpВідправлення запитів до бази даних в php
Запит sql на створення індексуЗапит sql на створення індексу
Використання union в sqlВикористання union в sql
Випадкова вибірка з бази данихВипадкова вибірка з бази даних
» » Як знайти помилку в sql-запиті