Query - позволяет частично инкапсулировать различные SQL запрос-ы, расширять и модифицировать их. Почему именно частично? Дело в том, что мы не ставили перед собой задачу обеспечить полную переносимость SQL-кода между различными базами данных. Текущая реализация Query - это результат небольших рефакторингов, направленных всего лишь на повышение уровня повторного использования кода, связанного с формированием и манипуляцией SQL-кода. Поэтому для использования Query классов знание SQL - обязательно.
Список классов, входящих в подсистему:
| Класс | Назначение |
|---|---|
| Базовые классы | |
| lmbTemplateQuery | Базовый класс для всех классов подсистемы Query |
| lmbCriteriaQuery | Абстрактный класс. Реализует добавление условий в запросы |
| lmbSelectRawQuery | Базовый класс для формирования SQL-запросов для выборки данных. Является родителем lmbSelectQuery |
| Конечные классы | |
| lmbSelectQuery | При помощи этого класса формируется SQL-запросы для выборки данных |
| lmbInsertQuery | Реализует запросы по вставке записей |
| lmb_bulk_insert_query | Реализует запросы по вставке большого количества записей |
| lmb_insert_on_duplicate_update_query | Реализует запросы по вставке записей, при совпадении уникального индекса происходит обновление данных |
| lmbUpdateQuery | Реализует запросы по обновлению записей |
| lmbDeleteQuery | Инкапсулирует запросы для удаления записей |