Spec-Zone.ru › Yii 1.1

CMysqlCommandBuilder

Пакет system.db.schema.mysql
Наследование класс CMysqlCommandBuilder » CDbCommandBuilder » CComponent
С тех пор 1.1.13
Исходный код framework/db/schema/mysql/CMysqlCommandBuilder.php
CMysqlCommandBuilder предоставляет базовые методы для создания команд запросов для таблиц.

Общедоступные свойства

Свойство Тип Описание Определено в
dbConnection CDbConnection соединение с базой данных. CDbCommandBuilder
schema CDbSchema схема для этого генератора команд. CDbCommandBuilder

Защищенные свойства

Свойство Тип Описание Определено в
integerPrimaryKeyDefaultValue строка Возвращает значение по умолчанию для целочисленного/последовательного первичного ключа. Значение по умолчанию означает, что следующее CDbCommandBuilder

Общедоступные методы

Метод Описание Определено в
__call() Вызывает метод с указанным именем, который не является методом класса. CComponent
__construct() CDbCommandBuilder
__get() Возвращает значение свойства, список обработчиков событий или поведение по его имени. CComponent
__isset() Проверяет, является ли значение свойства нулевым. CComponent
__set() Устанавливает значение свойства компонента. CComponent
__unset() Устанавливает свойство компонента в значение null. CComponent
applyCondition() Изменяет SQL для применения условия WHERE. CDbCommandBuilder
applyGroup() Изменяет SQL для применения GROUP BY. CDbCommandBuilder
applyHaving() Изменяет SQL для применения HAVING. CDbCommandBuilder
applyJoin() Изменяет SQL для применения условия JOIN. CMysqlCommandBuilder
applyLimit() Изменяет SQL для применения LIMIT и OFFSET. CMysqlCommandBuilder
applyOrder() Изменяет SQL для применения ORDER BY. CDbCommandBuilder
asa() Возвращает объект поведения с указанным именем. CComponent
attachBehavior() Присоединяет поведение к этому компоненту. CComponent
attachBehaviors() Присоединяет список поведений к компоненту. CComponent
attachEventHandler() Присоединяет обработчик события к событию. CComponent
bindValues() Связывает значения параметров для SQL-команды. CDbCommandBuilder
canGetProperty() Определяет, можно ли считать свойство. CComponent
canSetProperty() Определяет, можно ли установить свойство. CComponent
createColumnCriteria() Создаёт критерии запроса со значениями указанных столбцов. CDbCommandBuilder
createCountCommand() Создаёт команду COUNT(*) для одной таблицы. CDbCommandBuilder
createCriteria() Создаёт критерии запроса. CDbCommandBuilder
createDeleteCommand() Создаёт команду DELETE. CDbCommandBuilder
createFindCommand() Создаёт команду SELECT для одной таблицы. CDbCommandBuilder
createInCondition() Генерирует выражение для выбора строк с указанными значениями первичного ключа. CDbCommandBuilder
createInsertCommand() Создаёт команду INSERT. CDbCommandBuilder
createMultipleInsertCommand() Создаёт команду множественного INSERT. CDbCommandBuilder
createPkCondition() Генерирует выражение для выбора строк с указанными значениями первичного ключа. CDbCommandBuilder
createPkCriteria() Создаёт критерии запроса с указанным первичным ключом. CDbCommandBuilder
createSearchCondition() Генерирует выражение для поиска указанных ключевых слов в списке столбцов. CDbCommandBuilder
createSqlCommand() Создаёт команду на основе данного SQL-запроса. CDbCommandBuilder
createUpdateCommand() Создаёт команду UPDATE. CDbCommandBuilder
createUpdateCounterCommand() Создаёт команду UPDATE, которая увеличивает/уменьшает определённые столбцы. CDbCommandBuilder
detachBehavior() Отсоединяет поведение от компонента. CComponent
detachBehaviors() Отсоединяет все поведения от компонента. CComponent
detachEventHandler() Отсоединяет существующий обработчик события. CComponent
disableBehavior() Отключает присоединённое поведение. CComponent
disableBehaviors() Отключает все присоединённые к этому компоненту поведения. CComponent
enableBehavior() Включает присоединённое поведение. CComponent
enableBehaviors() Включает все присоединённые к этому компоненту поведения. CComponent
evaluateExpression() Вычисляет PHP-выражение или обратный вызов в контексте этого компонента. CComponent
getDbConnection() Возвращает подключение к базе данных. CDbCommandBuilder
getEventHandlers() Возвращает список присоединённых обработчиков событий для события. CComponent
getLastInsertID() Возвращает последний ID вставки для указанной таблицы. CDbCommandBuilder
getSchema() Возвращает схему для этого генератора команд. CDbCommandBuilder
hasEvent() Определяет, определено ли событие. CComponent
hasEventHandler() Проверяет, есть ли присоединённые обработчики для указанного события. CComponent
hasProperty() Определяет, определено ли свойство. CComponent
raiseEvent() Вызывает событие. CComponent

Защищенные методы

Метод Описание Определено в
composeMultipleInsertCommand() Создаёт команду INSERT для множества строк. CDbCommandBuilder
createCompositeInCondition() Генерирует выражение для выбора строк со значениями составного ключа. CDbCommandBuilder
ensureTable() Проверяет, является ли параметр допустимой схемой таблицы. CDbCommandBuilder
getIntegerPrimaryKeyDefaultValue() Возвращает значение по умолчанию для целочисленного/последовательного первичного ключа. Значение по умолчанию означает, что следующее CDbCommandBuilder

Подробное описание методов

applyJoin() метод

public string applyJoin(string $sql, string $join)
$sql строка SQL-запрос, который необходимо изменить
$join строка часть JOIN (начиная с типа соединения, например, INNER JOIN)
{return} строка изменённый SQL-запрос
Исходный код: framework/db/schema/mysql/CMysqlCommandBuilder.php#28 (показать)
public function applyJoin($sql,$join)
{
    if(
$join=='')
        return 
$sql;

    if(
strpos($sql,'UPDATE')===0 && ($pos=strpos($sql,'SET'))!==false)
        return 
substr($sql,0,$pos).$join.' '.substr($sql,$pos);
    elseif(
strpos($sql,'DELETE FROM ')===0)
    {
        
$tableName=substr($sql,12);
        return 
"DELETE {$tableName} FROM {$tableName} ".$join;
    }
    else
        return 
$sql.' '.$join;
}

Изменяет SQL-запрос для добавления условия JOIN. Этот метод обрабатывает специфику синтаксиса MySQL, где JOIN должен стоять перед SET в операторе UPDATE и после FROM в операторе DELETE.

applyLimit() метод

public string applyLimit(string $sql, integer $limit, integer $offset)
$sql строка SQL-запрос без LIMIT и OFFSET.
$limit целое число максимальное количество строк, -1 для игнорирования ограничения.
$offset целое число смещение строки, -1 для игнорирования смещения.
{return} строка SQL-запрос с LIMIT и OFFSET
Исходный код: framework/db/schema/mysql/CMysqlCommandBuilder.php#51 (показать)
public function applyLimit($sql,$limit,$offset)
{
    
// Ugly, but this is how MySQL recommends doing it: https://dev.mysql.com/doc/refman/5.0/en/select.html
    
if($limit<=0 && $offset>0)
        
$limit=PHP_INT_MAX;
    return 
parent::applyLimit($sql,$limit,$offset);
}

Изменяет SQL-запрос для добавления LIMIT и OFFSET.

© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc/api/1.1/CMysqlCommandBuilder

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API