Изменения

Перейти к: навигация, поиск

Funq

1 байт добавлено, 21:24, 20 сентября 2009
Унарные преобразования
; <code>$query->delete(@tables)</code>: Превращает запрос из запроса выборки в запрос удаления. Если запрос содержит несколько соединённых таблиц, то необязательно удалять подходящие строки из всех этих таблиц — с помощью параметра <code>@tables</code> можно выбрать лишь несколько из них;
; <code>$query->insert_into($table)</code>: Превращает запрос в запрос вставки выбранных строк в таблицу <code>$table</code>. Параметр <code>$table</code> обязательно должен быть именем таблицы. В зависимости от СУБД, может принимать дополнительные параметры — в случае с MySQL это может быть LOW_PRIORITY или DELAYED (см. [[http://dev.mysql.com/doc/refman/5.0/en/insert.html|Синтаксис INSERT MySQL]]);
; <code>$query->replace_into($table)</code> : ([http://www.mysql.com/ MySQL]). Превращает запрос в запрос замены выбранных строк в таблицу <code>$table</code>: Аналогично insert_to, но при этом все имеющиеся в таблице записи со значениями полей, входящих в первичный или уникальный ключ, равными значениям одной из вставляемых строк, предварительно удаляются (см. [[http://dev.mysql.com/doc/refman/5.0/en/replace.html|Синтаксис REPLACE MySQL]]).
<span style="color:red">Внимание!</span> Методы update и delete могут быть применены к запросу только один раз, не могут сочетаться, не могут быть применены после insert_into или replace_into, и аннулируют действие на запрос методов select, group, order, distinct, count, value, включая их предыдущие применения к запросу <#f00>(!)</#>. Кроме того, невозможно применение методов update и delete к запросам, имеющим подзапросы в качестве derived table. При попытке любого из таких запрещённых действий генерируются предупреждения, а вызов игнорируется.

Навигация