« Développement:Tables de la base de données » : différence entre les versions
(17 versions intermédiaires par 4 utilisateurs non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
== Présentation == | == 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) | |||
courseid | *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 == | |||
*[[Tables des ressources]] | |||
*[[Tables des étiquettes]] | |||
== Description des tables d'activités == | |||
*[[Tables des forums]] (8) | |||
*[[Tables des glossaires]] | |||
*[[ | *[[Tables des ateliers]] (8) | ||
*[[ | *[[Tables des tests]] | ||
*[[ | *[[Tables des questions]] | ||
*[[Tables des wikis]](3) | |||
*[[Tables des leçons]] (9) | |||
*[[Tables des historiques]] | |||
*[[Tables des Scorm]] | |||
*[[Tables des base de données]] | |||
== Description des | == Description des tables du noyau moodle == | ||
*[[ | *[[Tables des cours]] (6) | ||
*[[ | *[[Tables des blocs]] (3) | ||
*[[ | *[[Tables des modules]] | ||
*[[ | *[[Tables de configuration]] (3) | ||
*[[Tables des historiques]] | |||
*[[Tables des fuseaux horaires]] | |||
*[[Tables des sauvegardes]] | |||
*[[Tables adodb_logsql]] | |||
*[[Tables de la cache]] (2) | |||
*[[Tables des événements]] | |||
*[[Tables des sessions ]] | |||
*[[Tables des statistiques]] | |||
*[[Tables des balises]] | |||
== Description des tables utilisateurs == | |||
*[[Tables des utilisateurs]] (6) | |||
*[[Tables des inscriptions]] (2) | |||
*[[Tables des groupes]] (2) | |||
*[[Tables des blogs]] (2) | |||
== Description des tables notes/barêmes == | |||
*[[Tables des notes]] (3) | |||
*[[Tables des barêmes]] | |||
*[[Tables des devoirs]] (2) | |||
*[[Tables configuration]] (3) | |||
== Outils de communication == | == Outils de communication == | ||
*[[ | *[[Tables des messages]] | ||
*[[ | *[[Tables des chats]] (3) | ||
*[[ | *[[Tables des sondages]] | ||
[[Category:Développeur]] |
Dernière version du 18 décembre 2010 à 22:54
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
- Tables des ateliers (8)
- Tables des tests
- Tables des questions
- Tables des wikis(3)
- Tables des leçons (9)
- Tables des historiques
- Tables des Scorm
- Tables des base de données
Description des tables du noyau moodle
- Tables des cours (6)
- Tables des blocs (3)
- Tables des modules
- Tables de configuration (3)
- Tables des historiques
- Tables des fuseaux horaires
- Tables des sauvegardes
- Tables adodb_logsql
- Tables de la cache (2)
- Tables des événements
- Tables des sessions
- Tables des statistiques
- Tables des balises