Attention : vous consultez actuellement la documentation dédiée aux versions 1.x de Moodle. La documentation pour les versions 2.x de Moodle est consultable ici : Développement:Tables de la base de données, celle pour les versions 3.x de Moodle est consultable ici : Développement:Tables de la base de données et celle pour Moodle 4.x est consultable là : Développement:Tables de la base de données.

Développement:Tables de la base de données

De MoodleDocs
Aller à :navigation, rechercher

Présentation

La base de données de Moodle est à l'image de Moodle : modulaire. Sa structure est clairement séparée en plusieurs sous-ensembles de tables qui adressent des fonctions centrales, ou au contraire qui servent de stockage aux modules et plugins.

Les tables de modules d'activité et des blocs sont toujours préfixés de manière significatives et se raccordent au schéma central à l'aide d'un certain nombre de clefs étrangères typiques :

  • course ou courseid : se réfère au cours qui constitue le contexte de l'enregistrement
  • groupid : se réfère au groupe d'utilisateurs (groupes du cours)
  • userid : se réfère à un utilisateur
  • categoryid : se réfère à une catégorie de cours dans l'arbre des catégories.

Pour les modules et plugins, le standard de construction précise qu'il existe une table principale pour chaque plugin qui porte le nom du plugin :

Pour le module d'activité glossaire par exemple, la table 'glossary' définit les "instances" de chacun des glossaires utilisés dans Moodle.

toutes les tables secondaires d'un module se réfèrent aux clefs-étrangères citées précédemment, mais aussi à une instance du module. Dans notre exemple :

glossaryid : se réfère à l'instance du module qui donne le contexte aux données.

Les tables principales pour les blocks s'appellent "block_blockname" en général, mais certaines implémentations ne suivent pas toujours cette règle à cause de la longueur* des noms de table que cela peut générer.

Description table des ressources

Description des tables d'activités

Description des tables du noyau moodle

Description des tables utilisateurs

Description des tables notes/barêmes

Outils de communication