| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > MySQL > удалить из базы скопом записи |
| Автор: dstorm81 10.7.2008, 11:00 |
| небольшой вопрос по оптимизации есть группа чекбоксов, которые отмечают записи на удаление они приходят массивом через пост и удаляют из базы записи через ЦИКЛ то есть многократно выполняются запросы к базе вот собственно вопрос, можно ли каким нибудь методом сразу передать запросу все чекбоксы отмеченные на удаление, чтобы удаление выполнилось одним запросом конечно можно самому построить строку с AND-ами и засунуть в запрос, но хотелось узнать может есть какое решение средствами самой mysql пхп5 мускуль 5 (каскад в данном случае не поможет, так как таблица главная) |
| Автор: Kesh 10.7.2008, 12:35 |
| Не-а... нету... Правда действительно все делать одним запросом... Тут уж как вам больше нравится, либо с ...OR..., либо с IN (...) |
| Автор: Feldmarschall 10.7.2008, 14:57 |
и как ты себе это представляешь? чтобы бд удалила строку, у которой id равен и одному и пятнадцати? непонятен вопрос про "средства самой sql". что именно она должна "мочь"? узнать у формы, какие в ней были чекбоксы отмечены? |
| Автор: Feldmarschall 10.7.2008, 16:05 | ||
| я не ругаюсь, я спрашиваю. при чем здесь тон? ты сам, просто глядя на строку, разве не видишь, что она не удовлетворяет условию "id одновременно и 1 и 15"? у строки ведь только 1 id!
То есть, ты хочешь, чтобы SQL понимала переменные РНР? Нет, таких встроенных средств нету. SQL запрос - это строка. И надо просто эту строку составить. Это несложно. |
| Автор: Kesh 10.7.2008, 16:38 |
| Тебе надо составлять запрос самому... DELETE FROM table WHERE id IN ( и тут перечисляешь ). |