Mudar todas as inscrição de curso no Moodle com comando SQL

Mudar todas as inscrição de curso no Moodle com comando SQL

por Lino Vaz Moniz -
Número de respostas: 0

Para mudar todas as inscrições de um curso para outro na plataforma Moodle,  execute a seguir  os comandos SQL:

 

Tabela de perfil de inscrição

 a) Recuperar contexto do curso destino

SELECT id FROM mdl_context WHERE contextlevel=50 AND instanceid=?

Passe o parâmetro id do curso destino em instanceid=?

 

b) Processar atualização

UPDATE mdl_role_assignments SET contextid=? WHERE contextid IN(SELECT id FROM mdl_context WHERE contextlevel=50 AND instanceid=?)

 Passe o parâmetro id do contexto do curso destino recuperado no comando a) em contextid=?

 Passe o parâmetro id do curso origem em instanceid=?

 

Tabela de status de inscrição

c)Recuperar id do método de inscrição do curso destino

 SELECT MAX(id) AS id FROM mdl_enrol WHERE enrol='manual' AND status=0 AND courseid=?

 Passe o parâmetro id do curso destino em courseid=?

 

d)    Processar atualização

   UPDATE mdl_user_enrolments SET enrolid=? WHERE enrolid IN(SELECT id FROM mdl_enrol WHERE courseid=?)

Passe o parâmetro id do método de inscrição do curso destino recuperado no comando c) em enrolid=?

 Passe o parâmetro id do curso origem em courseid=?

  

Feito esses procedimentos, todas as inscrições serão mudados de curso. No curso destino as inscrições entrarão no método de inscrição manual. Evita fazer isso se no curso destino já existe alguma inscrição.