MOLDSQL - информационный ресурс, посвящённый учёбе работы с базами данных SQL
Модификации
Методы модификации запросов
o 1. Выделение пользовательской функции.
o 2. Выделение представления.
o 3. Избавление от подзапросов.
o 4. Избавление от UNION.
Программные средства рефакторинга SQL
o 1. Форматирование кода и визуальное представление.
o 2. Программы для рефакторинга запросов.
o 3. Unit-тестирование для SQL-запросов.
Практически любой разработчик приложений баз данных сталкивается с необходимостью переделки ранее написанных SQL-запросов. При этом обычно преследуются две цели: во-первых - оптимизация времени выполнения запроса, во-вторых - улучшение дизайна запроса. Этот процесс подпадает под определение одной из основных практик экстремального программирования - рефакторинга (улучшения качества кода без изменения его функциональности). Основная масса литературы по рефакторингу посвящена переделке кодов программ, написанных на алгоритмических языках, и касается, как правило, объектно-ориентированных аспектов программирования. Целью данной статьи является попытка описания практики рефакторинга для SELECT-запросов языка SQL.
Признаки необходимости модификации запросов
Прежде чем заниматься переделкой кода, для начала надо четко определить, чем он плох, к чему надо стремиться, какими характеристиками должен обладать «совершенный запрос». Ниже предлагается ряд признаков «плохого» кода, при этом подразумевается, что по функциональности запрос уже нас устраивает и выдает в точнсти те данные, которые требуются.
1-ый признак
Код может быть «плохо оформлен», в этом случае его сложно понимать, соответственно - сложно переделывать. Для разработчика это должно означать несоответствие оформления запроса некоторым правилам, стандарту кодирования. Если не рассматривать правила именований объектов баз данных (считается, что схему данных изменить нельзя), то стандарт кодирования должен описывать, как должен быть отформатирован запрос (отступы, пробелы, длина строк…) и как должны именоваться объявляемые в его рамках переменные и алиасы (псевдонимы). Сюда же можно отнести требование использования только стандартных ключевых слов языка SQL и только в несокращенной форме.



