[ главная ]   [ рейтинг статей ]   [ справочник радиолюбителя ]   [ новости мира ИТ ]



Ответов: 0
25-02-12 07:01







   Web - программирование
PHP


ASP






XML



CSS

SSI





   Программирование под ОС











   Web - технологии








   Базы Данных









   Графика






Данные




Web - программирование / PHP /

Оформление SQL запросов в PHP

Доброго времени суток. Решил рассказать о том, как я оформляю SQL запросы в PHP. Итак каким критериям должен удовлетворять мой запрос: Удобочитаемость; Возможность комментировать каждое действие в запросе; Возможность исключить одну из таблиц или действий при помощи комментария, не удаляя ничего из запроса.

Вот пример запроса SELECT:

$sql = "SELECT m.id, m.text"
.", u.name, u.email"
." FROM messages m"
." LEFT JOIN users u ON u.id=m.user_id"
." WHERE m.status=0"
." AND u.id='".$user_id."'"
." ORDER BY m.date"
." LIMIT 10"
;


Итак каких правил оформления я придерживаюсь:
1. Каждый оператор находится на отдельной строке
2. Каждая страка заключается в «." "», что дает возможность комментирования как любого действия
$sql = "SELECT m.id, m.text" // Выбираю ID и текст сообщения
.", u.name, u.email" // Выбираю имя и email пользователя
." FROM messages m" // Таблица сообщений
." LEFT JOIN users u ON u.id=m.user_id"
." WHERE m.status=0" // Со статусом 0 (прочитанные)
." AND u.id='".$user_id."'" // Пользователя с указанным ID
." ORDER BY m.date" // Сортировка по дате добавления сообщения
." LIMIT 10" // Выбираем 10 записей
;

так и отключения одной из строк запроса
$sql = "SELECT m.id, m.text"
.", u.name, u.email"
." FROM messages m"
." LEFT JOIN users u ON u.id=m.user_id"
." WHERE m.status=0"
." AND u.id='".$user_id."'"
// ." ORDER BY m.date"
." LIMIT 10"
;

3. Любое обращение к таблице разделяется на отдельные строки с группировкой по таблицам, что дает возможность комментарием убрать одну из таблиц
$sql = "SELECT m.id, m.text"
// .", u.name, u.email"
." FROM messages m"
// ." LEFT JOIN users u ON u.id=m.user_id"
." WHERE m.status=0"
// ." AND u.id='".$user_id."'"
." ORDER BY m.date"
." LIMIT 10"
;

4. После «."», перед операторами ставится пробел
." FROM messages m"
а в
.", u.name, u.email"
запятая, что придает каждой строке назависимость от других.

Возможно кому-то покажется данный способ сложным и не привычным, но как показала практика, привыкнув к такому способу оформления запросов производительность разработки увеличивается в разы.
 

Источник: http://tigor.habrahabr.ru/



Комментарии

 Ваш комментарий к данному материалу будет интересен нам и нашим читателям!



Последние статьи: Web - программирование / PHP /

GTK+: перспективы развития
02-03-2010   

Библиотека GTK+ прошла долгий путь развития и сейчас очень популярна. GNOME, одна из ведущих оконных сред, использует GTK+ почти исключительно, GIMP построен на GTK+, множество коммерческих разработчиков ПО, таких как Abobe, NVidia и VMware, решили использовать эту библиотеку в качестве графической основы для своих продуктов... подробнее

Кол. просмотров: общее - 4730 сегодня - 0

Новостной портал
13-11-2009   

Slashdot.org – популярный новостной портал с посещаемостью 50 млн. человек в месяц. Авторы проекта добились такого успеха, предоставляя пользователям свежие и интересные новости из мира IT... подробнее

Кол. просмотров: общее - 4649 сегодня - 0

Параллельное выполнение скриптов может нарушить целостность информации в файлах
13-11-2009   

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

Кол. просмотров: общее - 4442 сегодня - 0

No spam.php
10-11-2009   

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

Кол. просмотров: общее - 4499 сегодня - 0

Начинаем работу с рисунками в php для Windows
10-11-2009   

Эта статья даст вам общее представление о том, как создавать, обрабатывать и выводить рисунки в PHP4 для Windows... подробнее

Кол. просмотров: общее - 4478 сегодня - 0



  WWW.COMPROG.RU - 2009-2012 | Designed and Powered by Zaipov Renat | Projects