Du coup, garder un bon contrôle de la taille maximum d'un enregistrement reste utile. Et c'est plus facile avec varchar(n) qu'avec varchar.
Pour moi il faut surtout comprendre que, dans le cas général, utiliser varchar plutôt que varchar(n) est préférable. D’ailleurs la règle est « Don't use varchar(n)by default » et pas « Don't use varchar(n) » ; et donc que sauf cas particuliers, une conception à base de varchar ou text sans limites avec des varchar(n) là ou c’est nécessaire posera moins de problèmes (en général, pas seulement de performance) qu’une conception avec des varchar(n) partout. Le wiki parle ici d’éviter une « optimisation prématurée » , si le cas que tu décris peut poser de réels problèmes de performances, soit les concepteurs l’ont pris en compte en amont en connaissance de cause, soit il va être mesurable et corrigé.
Comme d’habitude avec les pages de conseils (à faire ou à éviter) des documentations, ça n’est pas une liste de règles à appliquer sans réfléchir. D’ailleurs la plupart des règles données ont une section « quand utiliser quand même cette fonctionnalité » qui contient autre chose que « jamais ».
[^] # Re: varchar(n)
Posté par SpaceFox (site web personnel, Mastodon) . En réponse au journal PostgreSQL : ne faites pas ça !. Évalué à 4.
Pour moi il faut surtout comprendre que, dans le cas général, utiliser
varcharplutôt quevarchar(n)est préférable. D’ailleurs la règle est « Don't usevarchar(n)by default » et pas « Don't usevarchar(n)» ; et donc que sauf cas particuliers, une conception à base devarcharoutextsans limites avec desvarchar(n)là ou c’est nécessaire posera moins de problèmes (en général, pas seulement de performance) qu’une conception avec desvarchar(n)partout. Le wiki parle ici d’éviter une « optimisation prématurée » , si le cas que tu décris peut poser de réels problèmes de performances, soit les concepteurs l’ont pris en compte en amont en connaissance de cause, soit il va être mesurable et corrigé.Comme d’habitude avec les pages de conseils (à faire ou à éviter) des documentations, ça n’est pas une liste de règles à appliquer sans réfléchir. D’ailleurs la plupart des règles données ont une section « quand utiliser quand même cette fonctionnalité » qui contient autre chose que « jamais ».
La connaissance libre : https://zestedesavoir.com