La base de données.

Information importante

En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".

Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact


De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.

Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".

Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.

Bonjour,
Dans la version 5 de Drupal, Comment se fait l'installation. Le script de l'installation, est il install.php seulement? il fait appel a d'autres fichiers?
et Le script de base de données au niveau de la version 5, il se trouve où?
Merci

Forum : 
Version de Drupal : 

install.php fait appel a differents fichiers notamment pour recuperer les profiles et les hook_install.

Chaque module a desormais la possibilite de courrir un script d'install qui se trouve dans le fichier mon_module.install dedans tu trouveras tout ce dont les modules ont besoin pour s'intaller (creation de table, insertion de lignes, update, variables...)

Donc chaque module Drupal qui necessite une table a un ti fichier .install.

Pour le core de Drupal, je crois que tout le shema de la BDD est contenu dans system.install

Pour ma part, je trouve effectivement que le schéma de la base de données de Drupal sait rester simple. Si tu as un minimum de culture SGBD, cela ne devrait pas poser de souci particulier pour comprendre la base.

Il n'y a pas, à ma connaissance, de description détaillée de la base. De plus, les développeurs sont encouragés à utiliser au maximum l'API de Drupal pour accéder aux différentes informations du système.

Bonne trouvaille !

L'inconvénient de ce genre de schéma, c'est la profusion de tables : quand on cherche à rentrer dans le schéma, c'est loin d'être évident. C'est plus utile quand on part d'une table et qu'on cherche à connaître les rélations avec les autres tables.

Tout à fait d'accord avec Zigazou, d'autant que dans la pratique, il y a des tables dont on se contrefiche.

Les plus importantes sont :
- node
- users
- variable
- tables générées par CCK

Et le nom des champs est très intuitif, il est donc assez facile de comprendre ce qu'elles contiennent sans documentation particulière.

Gazon
Je suis entrain de parcourir ce schéma.
Ce qui me posait problème c'est le fait que sur le script, on indiquait pas de clés étrangère. Je sais que sur MySQL on n'utilise pas les clés étrangères, mais donc, la liaison entre deux table, n'est que sémantique?

Ce qui se passe est que le shema de Drupal commence a etre pas mal vieux et supportait encore MySQL 3.23 qui ne permet pas la gestion des cles etrangeres...

Ensuite le big probleme c'est que MySQL par defaut ne verifie pas les FK (cles etrangeres en raccourcis anglais) avec le type d'installation standard (types de tables = MySAM), pour cela il faut specifier le type InnoDB.

Sans rentrer ds les details, ce sont des cas plutot super rares d'installation (tres peu d'hebergeurs supportent ceci), du coup les developpeurs ne se sont pas preocupes de gerer les FK au niveau du shema. Cependant, elles sont qd meme relativement controles au niveau de la logique de Drupal meme...

Si le sujet t'interesse, y a un fil ds la liste des archives development de drupal.org http://lists.drupal.org/pipermail/development/2007-January/021908.html

Bonjour,

Je sait que je déterre ce sujet, mais il se trouve que je suis actuellement en projet sur drupal et je serais intéressé par la manipulation a effectuer pour récupérer le schéma de la base de données.

Merci d'avance si quelqu'un voit un jour ce post...