qmaer 4 Posted August 7, 2015 Report Share Posted August 7, 2015 Всем добрый вечер! Сегодня столкнулся с такой проблемой в ДЛЕ. Когда беру все записи и потом делаю какое вычисление и снов заношу данные в эту же таблицу. Исходник: $db->query("SELECT ид, название FROM таблица"); while ($row = $db->get_row()) { $alt_name = totranslit( stripslashes( $row['название '] ), true, false ); $db->query("UPDATE таблица set новое_поле='{$alt_name}' WHERE id='{$row['ид']}'"); } Как можно по-другому выполнить этот скрипт. Потому что выполняется только первая запись и все. Скрипт останавливается. Link to post Share on other sites
direct808 5 Posted August 7, 2015 Report Share Posted August 7, 2015 Если записей не много, то можно разбить на два цикла: в первом цикле собирать данные в массив во втором цикле по массиву обновлять данные; Другой способ: в цикле строить один большой запрос и разом обновить данные Link to post Share on other sites
qmaer 4 Posted August 7, 2015 Author Report Share Posted August 7, 2015 Если записей не много, то можно разбить на два цикла: в первом цикле собирать данные в массив во втором цикле по массиву обновлять данные; Другой способ: в цикле строить один большой запрос и разом обновить данные записей очень много десятки тысяч. Ресурс не экономно расходуется так. Проблема уже решена. Вот и все $sql_query = $db->query("SELECT ид, название FROM таблица"); while ($row = $db->get_row($sql_query)) { Link to post Share on other sites
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now