Перенести работы пользователей

Re: Перенести работы пользователей

от Alex Djachenko -
Количество ответов: 0
Изображение пользователя Developers Изображение пользователя Майнтейнер перевода Изображение пользователя ООО "Открытые Технологии" Изображение пользователя Тестер Moodle Изображение пользователя Эксперт по Moodle

Большая часть информации в Moodle хранится не в moodledata, а в базе данных. В тех же заданиях в moodledata хранятся только сами файлы, они бесполезны без записи в базе данных о том, что ученик сдал эту работу.

Скопировать данные из СУБД практически невозможно: представьте себе огромные таблицы в эксель, где данные по каждой подписке пользователя на курс - это одна строка, содержащая как id пользователя, так и id курса. Причем, информация, указывающая системе о том, что пользователь записан на курсе и сдал задание хранится в десятках таких таблиц. Простое копирование строк приведёт только к сбою в работе базы данных, надо заменять и пересчитывать идентификаторы строк. Это довольно трудоемко, требует большой внимательности, так как любая ошибка может сделать вашу базу данных неработоспособной. Руками бы я ни за что не взялся это править, а написание программы потребовало бы длительноё её отладки, прежде чем я бы рискнул запустить её на реальной базе данных.

Именно поэтому копирование данных рекомендуется выполнять через резервное копирование - там все эти проблемы решены, причем решены самими разработчиками и многократно отлаженны.