Partage
  • Partager sur Facebook
  • Partager sur Twitter

Définition d'une données calculées en BDD

Sujet résolu
28 février 2021 à 14:22:08

Bonjour,

Quand on dit 'il ne faut pas inscrire des données dans une base, à partir de données calculées de la base de données, concrètement qu'est-ce que cela veut dire ?

  • Partager sur Facebook
  • Partager sur Twitter
28 février 2021 à 15:32:47

Bonjour, les formes normales impose cela en effet, car cela implique une redondance.

De plus il ne faudrait pas stocker le résultat d'un calcul dans une colonne en base, cela pour éviter les pertes de cohérence si un incident empêche l'actualisation de ce calcul.

En gros si une requête SELECT te permet d'obtenir la valeur souhaitée (par exemple un nombre de commentaires pour un article, une quantité en stock pour un produit, etc.), alors il ne faut pas stocker cette donnée calculée, mais préférer la calculer chaque fois que besoin. 

Cette règle tombe selon le contexte, par pragmatisme, notamment lorsqu'il devient plus coûteux de faire le calcul que de le mettre à jour : lorsque le calcul est très très très souvent nécessaire alors que les actions qui le modifient sont peu fréquentes...

-
Edité par Benzouye 28 février 2021 à 15:35:54

  • Partager sur Facebook
  • Partager sur Twitter
Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
28 février 2021 à 18:13:01

Merci @Benzouye une fois de plus. Ton explication est claire surtout avec l'exemple du SELECT, depuis ce matin, je cherche une réponse claire.

  • Partager sur Facebook
  • Partager sur Twitter