Русскоязычный форум, посвященный фреймворку Kohana http://forum.kohanaframework.su/ |
|
Основы ORM - Изменение записей http://forum.kohanaframework.su/viewtopic.php?f=36&t=364 |
Страница 1 из 2 |
Автор: | admin [ 06 сен 2012, 22:27 ] |
Заголовок сообщения: | Основы ORM - Изменение записей |
В уроке "Основы ORM - Изменение записей" вы узнаете, как добавлять, изменять и удалять записи посредством ORM, а также как посчитать количество записей. Ссылка на урок: http://kohanaframework.su/database/orm_change_data |
Автор: | mamahtehok [ 06 сен 2012, 22:52 ] |
Заголовок сообщения: | Re: Основы ORM - Изменение записей |
orm->delete() - может удалить несколько строк При обновлении множества записей в цикле можно проходить только set, а update можно запустить после цикла обновив все измененные записи одновременно. как-то так... |
Автор: | admin [ 07 сен 2012, 00:54 ] |
Заголовок сообщения: | Re: Основы ORM - Изменение записей |
Можно примерчик кода ? Примеры встречал или с delete_all или с циклом. |
Автор: | admin [ 07 сен 2012, 01:30 ] |
Заголовок сообщения: | Re: Основы ORM - Изменение записей |
Цитата: При обновлении множества записей в цикле можно проходить только set, а update можно запустить после цикла обновив все измененные записи одновременно. как-то так... У меня таким макаром только последнюю запись обновило. |
Автор: | mamahtehok [ 07 сен 2012, 01:36 ] |
Заголовок сообщения: | Re: Основы ORM - Изменение записей |
Да, похоже я ошибся, ввели в заблуждения описания функции Код:
или еще не реализовали. |
Автор: | admin [ 07 сен 2012, 02:59 ] |
Заголовок сообщения: | Re: Основы ORM - Изменение записей |
Ну вот как-то мне это совсем не нравится. Это получается он столько запросов делает, сколько записей попадает под выборку ? Что-то типа DELETE FROM `articles` WHERE `id` = 8 DELETE FROM `articles` WHERE `id` = 12 DELETE FROM `articles` WHERE `id` = 27 вместо DELETE FROM `articles` WHERE `name` = 'Тапки' |
Автор: | Sergey [ 07 сен 2012, 05:05 ] |
Заголовок сообщения: | Re: Основы ORM - Изменение записей |
admin писал(а): Ну вот как-то мне это совсем не нравится. Это получается он столько запросов делает, сколько записей попадает под выборку ? Пардон, а чем принципиально отличается Код:
от Код:
|
Автор: | admin [ 07 сен 2012, 17:09 ] |
Заголовок сообщения: | Re: Основы ORM - Изменение записей |
Тем, что первого запроса может быть штук 200, а второго - только 1. Например, так: id----------name 1 Варежки 2 Тапки 3 Тапки 4 Кирзачи 5 Шлепанцы 6 Тапки |
Автор: | Sergey [ 08 сен 2012, 18:11 ] |
Заголовок сообщения: | Re: Основы ORM - Изменение записей |
Код:
|
Автор: | admin [ 08 сен 2012, 19:17 ] |
Заголовок сообщения: | Re: Основы ORM - Изменение записей |
Ну. Я про это и говорю. Удаление в цикле. $o->delete(); каждый раз формирует новый запрос на удаление, т.е. с каждой итерацией удаляет по одной записи. Разве это нормально ? Если скажем мне нужно удалить все черновики статей, т.е. все записи с mark = 1 Сначала сделать их выборку, а потом в цикле проходить каждую запись и удалять. А если их 5000 ? Получится 5001 запрос. А можно просто написать одну строку: Код:
|
Страница 1 из 2 | Часовой пояс: UTC + 4 часа [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |