6l20 a écrit :
Pardon pour le hs, je ferai pénitence et acte de repentir Vendredÿ en ne postant pas
Oh ben non Vendredÿ passé était carrément nul, faut se fair plaisir
6l20 a écrit :
A noter aussi au niveau des performances que char est logiquement plus rapide que varchar lui-même plus rapide que text/blob, et que les derniers ne peuvent sauf erreur pas être indexés (sauf en fulltext mais c'est pour une utilisation radicalement différente).
Comme jb_gfx, je rajouterais que TEXT/BLOB peuvent être indexés (depuis la 3.jesaisplus), mais qu'il faut obligatoirement spécifier une taille d'index.
Pour ce qui est des performances, on distingue déjà les choix pour la taille de la base de données et pour sa rapidité de réponse aux requêtes/opérations. Pour ce dernier point le choix du stockage peut être dépendant du type de requête que l'on veut effectuer et prioriser. Mais bon, dans les cas courants on s'en fiche un peu de ces détails, et sinon on fait appel à un expert
Pour tous ceux qui ne le sont pas, suivre des principes «de base» qui consiste à choisir le stockage qui correspond le mieux à notre type de donnée suffit. D'autant plus que bien choisir ses types permet de mieux en comprendre la nature d'une colonne sans devoir en analyser le contenu, et de limiter intentionnellement l'utilisation.
CHAR: Idéalement pour des données qui sont (majoritairement) de même taille : codes, hash, références produit alphanumérique, etc.
VARCHAR: Des données textes à longueur variable, mais qui restent dans des tailles moindres et dans une variation limitée: noms, rue, ville, modèle, téléphone, email, etc.
TEXT/BLOB: pour des textes que l'on ne souhaite pas limiter: corps d'article, données linéarisées, etc.
Modifié par kustolovic (11 Dec 2013 - 21:20)