Modificando las tablas de un módulo, ¿hay que reinstalar?

Modificando las tablas de un módulo, ¿hay que reinstalar?

de Javier Rodríguez -
Número de respuestas: 2
Hola moodlers! Ufff, mucho tiempo sin escribir! Estos tres meses he estado estudiando para los exámenes de febrero y ya he retomado el Proyecto de nuevo!

Tengo una preguntilla que haceros con respecto a las tablas que se crean cuando se desarrolla un módulo:
  • Si cada vez añado o modifico algo de las tablas (en el fichero mysql.sql), ¿tengo que reinstalar el módulo?
Gracias y un saludo!
Promedio de valoraciones: -
En respuesta a Javier Rodríguez

Re: Modificando las tablas de un módulo, ¿hay que reinstalar?

de Pablo Carnero Liñán -
hola Javier

no tienes que reinstalar el módulo, hay una forma de hacer las actualizaciones necesarias y es actualizando la versión de tu módulo en el archivo version.php por una versión posterior y luego añadiendo en el archivo mysql.php las actualizaciones, por ejemplo:
function tu_modulo_upgrade($oldversion) {
global $CFG, $db;

if ($oldversion < numero_de_gversión) {
execute_sql(sentencia_sql); // tu actualización
}
}

Fíjate en como hacen esto otros módulos.

Y corregidme si me equivoco, porque esta no es la forma en la que yo lo hago, entiendo que sea útil para hacer actualizaciones de terceras personas que ya tengan instalado el módulo. Yo prefiero tener mi base de datos entera en mi archivo .sql, así que los cambios que tenga que hacer los hago en ese archivo y también accediendo directamente a la base de datos de moodle, para no tener que reinstalar el módulo.
En respuesta a Pablo Carnero Liñán

Re: Modificando las tablas de un módulo, ¿hay que reinstalar?

de Javier Rodríguez -

Gracias por contestar Pablo.

A lo que yo me refiero es exactamente a tu último párrafo. Yo también tengo la base de datos en el archivo .sql y mi pregunta se refería que si modifico ese archivo sql que es lo que pasaría, ¿se reflejan los cambios sin reinstalar el módulo?

Un saludo!