Инструменты пользователя

Инструменты сайта


limb3_2007_3:ru:packages:dbal:lmb_criteria_query

lmbCriteriaQuery

lmbCriteriaQuery - это абстрактный класс, который позволяет добавлять сложные условия в SQL-запросы. Наследуется от класса lmbTemplateQuery. lmbCriteriaQuery добавляет поддержку метки вида %where% в SQL-шаблон. Условия, добавляемые в запрос, реализуются в виде классов подсистемы Criteria.

Для добавления новых условий в запрос, используется метод lmbCriteriaQuery :: addCriteria($criteria), например:

  $query->addCriteria(new lmbSQLRawCriteria('recipe_item.cocktail_id = cocktail.id'));
  $criteria = new lmbSQLFieldCriteria('ingredient.name', '%'.$name.'%', lmbSQLFieldCriteria :: LIKE);
  $query->addCriteria($criteria);

Для addCriteria() есть алиас where($criteria).

Если в качестве $criteria пришла обычная строка, то она будет автоматически обвернута в объект класса lmbSQLCriteria():

  $query->where('recipe_item.cocktail_id = cocktail.id');

lmbSelectQuery, lmbUpdateQuery и lmbDeleteQuery наследуются от lmbCriteriaQuery.

Обсуждение

Ваш комментарий. Вики-синтаксис разрешён:
     __  ____   _   __   ____   __ __
 __ / / / __ \ | | / /  / __/  / //_/
/ // / / /_/ / | |/ /  / _/   / ,<   
\___/  \____/  |___/  /___/  /_/|_|
 
limb3_2007_3/ru/packages/dbal/lmb_criteria_query.txt · Последнее изменение: 2010/11/10 10:02 — 127.0.0.1