Gorets 3 Опубликовано: 7 апреля 2007 Рассказать Опубликовано: 7 апреля 2007 Проблема: после создания бэкапа средствами ДЛЕ и последующего восстановления из этого бэкапа начинаются проблемы со всеми таблицами, в которых есть поля типа text Решение: в файл engine/inc/dumper.php в 233 строку добавить $tab = str_replace("text NOT NULL","text NOT NULL default ''",$tab); в итоге должно получиться приблизительно так: // Создание таблицы $result = mysql_query("SHOW CREATE TABLE `{$table}`"); $tab = mysql_fetch_array($result); $tab = preg_replace('/(default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP|DEFAULT CHARSET=\w+|COLLATE=\w+|character set \w+|collate \w+)/i', '/*!40101 \\1 */', $tab); $tab = str_replace("text NOT NULL","text NOT NULL default ''",$tab); $this->fn_write($fp, "DROP TABLE IF EXISTS `{$table}`;\n{$tab[1]};\n\n"); // Проверяем нужно ли дампить данные надеюсь в 5.7 успеете пофиксить... я уже год мучаюсь, а сегодня это уже надоело, вот и сел разбираться, в чем проблема... Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.